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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Совпадение "не слово" перед регуляркой

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Esigns
Отправлено: 20 Января, 2015 - 14:51:58
Post Id


Гость


Покинул форум
Сообщений всего: 95
Дата рег-ции: Сент. 2012  


Помог: 0 раз(а)




Есть регулярка, которая находит ссылки в тексте:
/((http|https|ftp|ftps|www)([:\/\/]|[\.])[^\s<]+[^\s\.,\!\?:;")<\]])/u
Нужно добавить функционал, чтобы она не находила ссылки прописанные в теге <a>.
Пример:
Цитата:
произвольный текст и какие-то теги <a href="http://forum.php.su">http://forum.php.su</a>
произвольный текст http://forum.php.su111

Должно найти только вторую ссылку: http://forum.php.su111

Т.е нужно поправить регулярку так, чтобы она не трогала ссылки, если перед ней есть надпись href= (это я так вижу)
Буду очень признателен за любую помощь.

(Отредактировано автором: 20 Января, 2015 - 19:17:48)

 
 Top
GoDr
Отправлено: 20 Января, 2015 - 20:34:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




а может проще сначала вырезать все ссылки вместе с тегами? Просто думаю что сложное условие + большой текст даст "тормоза"


-----
Система управления веб-содержимым Lotos CMS
 
 Top
andatr
Отправлено: 24 Января, 2015 - 18:39:27
Post Id


Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




(?<!href=")((http|https|ftp|ftps|www)([:\/\/]|[\.])((?!\<\/a>).)+?\s)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB