Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Помогите с подсветкой найденного текста
Форумы портала PHP.SU » PHP » Регулярные выражения » Помогите с подсветкой найденного текста

Страниц (1): [1]
 

1. ADIOS - 02 Сентября, 2010 - 08:28:34 - перейти к сообщению
Всем привет есть такая задачка с регулярными выражениями.

Пользователь ищет слово или фрузу, скрипт в базе нашел совпадения, и я никак не могу это совпадение выделить на странице с результатом,
Например запрос "Сайт": Что такое <strong>сайт</strong>? Слово "сайт" выделилось жирным.

Заранее благодарен за Вашу помощь.
2. duk - 02 Сентября, 2010 - 08:45:55 - перейти к сообщению
ну например
PHP:
скопировать код в буфер обмена
  1.  
  2. str_replace ( $search, '<strong>'.$search.'</strong>', $text);
  3.  
3. ADIOS - 02 Сентября, 2010 - 09:13:26 - перейти к сообщению
duk пишет:
ну например
PHP:
скопировать код в буфер обмена
  1.  
  2. str_replace ( $search, '<strong>'.$search.'</strong>', $text);
  3.  


Спасибо, оказалось все очень просто...

И в продолжении хочу добить свой поисковик....

Поисковик мой ищет слова или фразу как есть, хотя "слово" "слову" "слова" имеют одно и тоже значение, и мой поисковик на это не реагирует. Как это можно исправить, или что то дополнить?
4. duk - 02 Сентября, 2010 - 10:01:23 - перейти к сообщению
поисковик я никогда не писал, но думаю что быстро здесь все не поправишь. Надо делать лексический анализ, а русский язык - не самая простая вещь
5. JustUserR - 02 Сентября, 2010 - 17:39:00 - перейти к сообщению
ADIOS пишет:
Поисковик мой ищет слова или фразу как есть, хотя "слово" "слову" "слова" имеют одно и тоже значение, и мой поисковик на это не реагирует. Как это можно исправить, или что то дополнить?
Для организации поиска по тестку с учетом его морфологии и особености словообразование необходимо использовать спецальные методы - в частности Стеммер Портера позволяет эвристическим методов извлекать корень слова на основе чего можно пробовать искать одинаковые слова в разных формах - а для учета синонимов возможно приведение слов в начальную форму и дальнейший поиск по словарю

 

Powered by ExBB FM 1.0 RC1