Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   PHP (http://www.flasher.ru/forum/forumdisplay.php?f=20)
-   -   Подсветка искомых слов (http://www.flasher.ru/forum/showthread.php?t=34519)

KoYoT 16.07.2002 14:50

Подсветка искомых слов
 
Люди! Помогите с функцией!
мне надо сделать подсветку искомого слова в тексте.
Допустим $search -искомое слово
$mess -текст в котором надо подсветить $search
использую функцию:
$mess = str_replace($search, "<b>$search</b>", $mess);
PRINT "$mess";
работает все идеально! НО!!!!!
функция чувствительна к регистру букв.....
Если $search = "терроризм";
то все слова терроризм в $mess подсветятся, т.е. будет выделенно жирным, а слова ТЕРРОРИЗМ или Терроризм не подсветятся...
Как обойти? как заставить функцию схавать все регистры?
или может есть другие функции?
пожалуйста ответьте подробне...

Gandalf 17.07.2002 00:20

$end_string = preg_replace("'(canada)'is","<font color=\"red\">$1</font>",$where_to_look);

короче это перловские регулярки ........ это ( по идеи) должно найти любое! сочитание слова canada регистр не имеет значения плюс не имеет значения если перед или после слова есть что либо т.е. asdCANADAasd поподёт в подстановку!

так же посмотри PHP хелп , там есть ereg_* и eregi_* примерно то же самое что и str_replace и preg_replace но php-шное плюс вторая (eregi_*) игнорирует регистр!

kompadre 17.07.2002 02:51

Yesli ispolzuyesh preg_replace() togda nado vtoroy argument pisat sleduyushim makarom

preg_replace ("/chto-to/", "/to-to/i");

S i, preg_replace delayetsia case insensetive.

Odnako ya bi posovetoval uzat funcciyu eregi_replace.

advocat 18.07.2002 22:25

Есть более интересные функции, так первое
eregi_replace() - не реагирует на реестр, далее
preg_split() - возращает тебе масив, в котором искомые слова разбиты и ты просто можешь эти элементы выделить !
ну и наконец это перловские приколы ....
preg_replace() , но ты же можешь искомое слово заменять на <b>$slovo</b>
напр:
$text = preg_replace($search, "<b>$search</b>", $text);
или
$text = eregi_replace($search, "<b>$search</b>", $text);


Часовой пояс GMT +4, время: 15:32.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.