Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Подсветка...
 
 автор: Shorr Kan   (01.02.2006 в 00:29)   письмо автору
 
 

Нижеследующая вещь - недурно подсвечивает желтым. Но она влезает и в <title></title> - получается:
<title><b style='background-Color:yellow;'>текст</b></title>

<?
eregi_replace
(">([^<]*)(".$word.")"">\\1<b style='background-Color:yellow;'>\\2</b>"$text); 
?>


Можно это как-нибудь исправить?

   
 
 автор: cheops   (01.02.2006 в 14:29)   письмо автору
 
   для: Shorr Kan   (01.02.2006 в 00:29)
 

Хм... а если так
<? 
eregi_replace
(">([^<]*)(".$word.")[^<]"">\\1<b style='background-Color:yellow;'>\\2</b>"$text); 
?>

правда выражение не будет срабатывать на любые вхождения заканчивающиеся каким-либо тэгом.

   
 
 автор: Shorr Kan   (01.02.2006 в 19:15)   письмо автору
 
   для: cheops   (01.02.2006 в 14:29)
 

Ваш вариант не сработал... Дело в том, что в title есть не только найденное. Например, я ищу big ben ... но в title - big ben description ...и так будет по-разному. Можно попросить регулярку работать толко после того, как найден тег body ? Я знаю как это сделать строковыми, но, может, лучше регулярными?

   
 
 автор: cheops   (02.02.2006 в 13:27)   письмо автору
 
   для: Shorr Kan   (01.02.2006 в 19:15)
 

Подумать нужно... не могли бы вы привести кусочек с title - в названии имеются другие тэги?

   
 
 автор: Shorr Kan   (02.02.2006 в 18:45)   письмо автору
 
   для: cheops   (02.02.2006 в 13:27)
 

Пара примеров.

<title>Abaco and Cays. Description. Find more information about Abaco and Cays.</title>
<title>Automobile. Description. Models and series of auto.</title>

"имеются другие тэги?"
Нет.

   
 
 автор: Crux   (02.02.2006 в 21:42)   письмо автору
 
   для: Shorr Kan   (02.02.2006 в 18:45)
 

попробуй так

<?
eregi_replace
("([^title].*)>([^<]*)(".$word.")""\\1>\\2<b style='background-Color:yellow;'>\\3</b>"$text);
?>

   
 
 автор: Shorr Kan   (03.02.2006 в 12:43)   письмо автору
 
   для: Crux   (02.02.2006 в 21:42)
 

А так он не подсвечивает, если искомое начинается сразу после тега... например - <font>Слово

Но я нашел решение... substr , strpos и eregi_replace - втроём справились. strpos'ился до
"<body" , а eregi_replace - на второй элемент... всё что после "<body"

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования