JavaScript验证URL地址的正则
js验证URL经常会在项目中用到,突然看到一个比较全面的验证函数,验证的情况包括IP,域名(domain),ftp,二级域名,域名中的文件,域名加上端口,FTP用户名等等信息,虽然还没来得及做测试,但是先收藏了。感谢原作者,虽然我并不知道原作者到底是谁。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
function IsURL(str_url){ var strRegex = "^((https|http|ftp|rtsp|mms)?://)" + "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" //ftp的user@ + "(([0-9]{1,3}\.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184 + "|" // 允许IP和DOMAIN(域名) + "([0-9a-z_!~*'()-]+\.)*" // 域名- www. + "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\." // 二级域名 + "[a-z]{2,6})" // first level domain- .com or .museum + "(:[0-9]{1,4})?" // 端口- :80 + "((/?)|" // a slash isn't required if there is no file name + "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$"; var re=new RegExp(strRegex); //re.test() if (re.test(str_url)){ return true; }else{ return false; } } |
您可以任意转载本文,但转载时请以超链接形式标明文章原始出处和作者信息及版权声明