поиск и отображение строки из группы строк php - PullRequest
1 голос
/ 12 мая 2010

Я хочу знать, как искать и отображать строку из группы строк, как Google отображать слово, которое мы ищем ...

следующий пример из Google

слово для поиска - Google Books

результат

Поиск и предварительный просмотр миллионов книг из библиотек и издательств по всему миру с использованием Google Book Поиск. Откройте для себя новую любимую или раскопайте старую классику.

Я хотел бы сделать этот тип одного ...

спасибо и заранее

Ответы [ 2 ]

2 голосов
/ 12 мая 2010
$searchString = "Google Book";

$originalString = "Search and preview millions of books from libraries and publishers worldwide using Google Book Search. Discover a new favorite or unearth an old classic.";

$outputString = preg_replace("/($searchString)/i",'<strong>${1}</strong>',$originalString);

Это должно выполнять поиск и замену строки поиска без учета регистра, чтобы она обернулась тегами <strong>.

Обратите внимание, что оно не будет совпадать, если вы введете строку поиска "Google Книги" (обратите внимание на 's'). Это очень просто, здесь нет оснований для объяснения вариаций слов / множественного числа и т. Д., А также не проверяются границы слов (т. Е. Вы можете искать «oogl», и он будет соответствовать G oogl e). В зависимости от ваших требований, этого может быть достаточно.

1 голос
/ 12 мая 2010

Вы также можете использовать strtr, это может быть быстрее при работе с большими кусками текста.

$text = strtr($text, array("search term" => "<b>search term</b>"));

Будьте осторожны, чтобы использовать массив в качестве параметра, так как это поведение функции немного отличается при использовании строковых параметров

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...