Будучи нубом в регулярных выражениях я требую некоторой поддержки со стороны сообществарегулярного выражения, чтобы соответствовать всем ключевым словам в строке
Пусть у меня есть эта строка ули
www.anysite.com привет демо попробуйте эту ссылку
anysite.com действительно демонстрационная ссылка
http://www.anysite.com еще один
www.anysite.com
Рассмотрим 1-5 в целом строка ул здесь
Я хочу, чтобы преобразовать все ' anysite.com 'в интерактивные ссылки html, для которых я использую:
str = str.replace(/((http|https|ftp):\/\/[\w?=&.\/-;#~%-]+(?![\w\s?&.\/;#~%"=-]*>))/g, '<a href="$1" target="_blank">$1</a>');
Это преобразует все пространство разделенных слов, начиная с HTTP/HTTPS/FTP в ссылки, как
<a href="url" target="_blank">url</a>
Таким образом, линии и линии правильно преобразованы. Теперь, чтобы преобразовать все www.anysite.com в ссылки я снова использовал
str = str.replace(/(\b^(http|https|ftp)?(www\.)[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig, '<a href="https://$1" target="_blank">$1</a>');
Хотя он преобразует только www.anysite.com в ссылку, если она находится в самом начале ул. Поэтому он преобразует номер строки , но не номер строки .
Обратите внимание, что я использовал ^? (HTTP | HTTPS | FTP) (. WWW), чтобы найти все WWW не начиная с HTTP/HTTPS/FTP, как и для HTTP они уже были преобразованы
Также ссылка на номер строки , где она не начинается с http или www, а заканчивается на .com, как для этого будет регулярное выражение.
Для справки вы можете попробовать разместить эту целую цепочку на вашей временной шкале facebook, она преобразует все пять строк в ссылки. Проверьте снимок
Возможный дубликат [Что такое хорошее регулярное выражение для соответствия URL?] (Http://stackoverflow.com/questions/3809401/what-is-a-good-regular-expression-to-match-a- url) – nicael
Возможно, вы использовали URL-адрес для регулярного выражения, и проблема была решена (вы уже знаете, как использовать замену, не так ли?) – nicael
Пожалуйста, проверьте свой вопрос. –