正则表达的网站

时间:2016-11-21 10:50:35

标签: regex

我使用以下正则验证网站网址。

^(http(s?):\/\/)?(www\.)+[a-zA-Z0-9\.\-\_]+(\.[a-zA-Z]{2,3})+(\/[a-zA-Z0-9\_\-\s\.\/\?\%\#\&\=]*)?$

使用以下网站网址可以正常匹配:

www.google.com

docs

test credentials

它也不是数学网址

google.com

google.co

www.g@oogle.com

但它无法测试以下网址:

... WWW google.com

http://www.google.com/

https://www.google.com/

请给出相同的建议。 我已经查看了下面的堆栈溢出URL,但回答对我没用。

http://www...google.com/

https://www...google.com/

1 个答案:

答案 0 :(得分:2)

要避免...,您可以使用否定前瞻

例如:

^(?!.*\.\.)(https?:\/\/)?www\.[\w.\-]+(\.[a-zA-Z]{2,3})+(\/[\w.?%#&=\/\-]*)?$

该正则表达式中的(?!.*\.\.)将不允许字符串中有2个点。