e_moon
Новичок
Регулярное выражение
Здравствуйте,
Ситуация такова: юзеры добавляют комментарии к статьям. Есть функция, которая должна заменять на редирект ссылки на посторонние сайты. Для это использую preg_match_all + preg_replace. Регулярное выражения для поиска такое:
Все бы хорошо, но наткнулся на проблемку:
Находит все, кроме 1-й ссылки. Подскажите, как модифицировать мое регулярное? Вроде бы надо использовать поиск вперед/назад - (?<!foo)bar - но никак не разберусь как его использовать. Или еще как?
Спасибо.
Здравствуйте,
Ситуация такова: юзеры добавляют комментарии к статьям. Есть функция, которая должна заменять на редирект ссылки на посторонние сайты. Для это использую preg_match_all + preg_replace. Регулярное выражения для поиска такое:
PHP:
preg_match_all('/<a.*?href=\"?\'?([^"\'>]+)\"?\'?.*?>/i',$Message,$Links);
//что заменяется на redir.php?url=найденое
PHP:
1. <a href=/catalog tite=test>test</a>
2. <a href="/каталог товаров" title="test">test</a>
3. <a href="/catalog" title="test">test</a>
4. <a href='/catalog' title='test'>test</a>
Спасибо.