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

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

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

 

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

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

тема: странности в работе preg_replace
 
 автор: Лёлик   (29.06.2006 в 18:31)   письмо автору
 
 

Подменяю в тескте ссылки типа <a href="home">home</a> на <a href="home" class="link" onclick="showLink()">home</a>
Делаю так

<?
preg_replace
('/<a href="(.+)">/i''<a href="$1" onfocus="showLink()" class="link">'$text);
?>

Но получается странность. Когда в тексте несколько ссылок, заменяеться только последняя.
У меня когда-то проявлялась такая же зяба, но пропала сама собой. Посмотрел этот код, принципиальных различий никаких.

   
 
 автор: cheops   (29.06.2006 в 22:28)   письмо автору
 
   для: Лёлик   (29.06.2006 в 18:31)
 

Попробуйте добавить модификтор U, инвертирующий жадность регулярных выражений
<? 
preg_replace
('/<a href="(.+)">/iU''<a href="$1" onfocus="showLink()" class="link">'$text); 
?>

   
 
 автор: Лёлик   (30.06.2006 в 12:20)   письмо автору
 
   для: cheops   (29.06.2006 в 22:28)
 

Вот спасибо, помогло. А тоя сам чего-то ступил, напрочь забыл про "жадность".

   
Rambler's Top100
вверх

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