WebURL的Javascript正则表达式

时间:2013-07-29 09:33:26

标签: javascript regex validation url

我想在javascript中使用正则表达式来验证任何WebURL。

它应该接受以下格式:

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

我已经尝试了很多正则表达式。但没有人看起来很完美。下面是一些经过尝试的正则表达式: -

/(http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
/[a-z]+:\/\/(([a-z0-9][a-z0-9-]+\.)*[a-z][a-z]+|(0x[0-9A-F]+)|[0-9.]+)\/.*/
/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
/^(((ht|f){1}((tp|tps):[/][/]){1}))[-a-zA-Z0-9@:%_\+.~#!?&//=]+$/
  
    

我希望正则表达式只需要3个WWW.Not超过3个且不低于3个WWW。

  

3 个答案:

答案 0 :(得分:0)

您如何看待:

((http|https|)\://){0,1}([w]{3}.){0,1}[a-zA-Z0-9\-\.]+\.[a-zA-Z]{2,3}

解释

  • ((http|https|)\://){0,1}用于可选协议(“”或“http://”或“https://”即可)
  • ([w]{3}.){0,1}用于可选的www字符串
  • 域名
  • [a-zA-Z0-9\-\.]+
  • [a-zA-Z]{2,3}用于域名后缀,例如:com,uk,biz,tv等。

答案 1 :(得分:0)

这个匹配您的所有网址:

(https?://)?(www\.)?([a-zA-Z0-9_%]*)\b\.[a-z]{2,4}(\.[a-z]{2})?((/[a-zA-Z0-9_%]*)+)?(\.[a-z]*)?

尽管可能存在一个子域名,但仍然无法检查三个“W”。如果你真的需要这个检查,我会使用第二个正则表达式进行测试。

答案 2 :(得分:0)

这里有两种验证URL的方法

 ^(https?|ftp|file)://.+$

  ^((https?|ftp)://|(www|ftp)\.)[a-z0-9-]+(\.[a-z0-9-]+)+([/?].*)?$

试试这些......