用于在文本中查找URL的正则表达式

时间:2014-01-10 20:44:12

标签: javascript regex url

我想使用JavaScript(我用<a>标签替换网址)为文本内的网址找到防弹RegEx,我当前是RegEx:

var url_re = /https?:\/\/(?:(?!&[^;]+;)[^\s:"'<>)])+/g;

它正在运行但与端口匹配的网址不匹配(如http://localhost:8080)。此RegEx是否会匹配所有网址,或者我也会遗漏某些网址?

var url_re = /https?:\/\/[^\/\s"'<>]+\/?(?:(?!&[^;]+;)[^\s:"'<>)])+/g;

也许网址上有更短/更好的正则表达式。

1 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式:

\bhttps?:\/\/(?:(?!&[^;]+;)[^\s"'<>)])+\b

在线演示:http://regex101.com/r/wT2rG9