Javascript URL正则表达式问题

Javascript URL Regex issues

本文关键字:问题 正则表达式 URL Javascript      更新时间:2023-09-26

我使用这个正则表达式的URL:

var re = /^(http[s]?:'/'/){0,1}(www'.){0,1}[a-zA-Z0-9'.'-]+'.[a-zA-Z]{2,5}['.]{0,1}/;

然而,它似乎只匹配单独的URL。如果您将URL添加到已键入的消息中,它将不匹配:

Test message: www.google.com

不匹配。如何匹配URL,无论URL包含什么?

这是因为表达式开头的^字符意味着"匹配字符串的开头"(换句话说,您所拥有的是开始的搜索)。删除它,它将匹配测试字符串中的任何地方。

var re = /(http[s]?:'/'/){0,1}(www'.){0,1}[a-zA-Z0-9'.'-]+'.[a-zA-Z]{2,5}['.]{0,1}/;

这仅仅是因为您使用了插入符号(^)。这意味着"只匹配输入的开头"。去掉它,你应该得到你想要的。