Skip to content

Instantly share code, notes, and snippets.

@hehongwei44
Created July 6, 2014 01:33
Show Gist options
  • Save hehongwei44/ce075343fc539c1e4c75 to your computer and use it in GitHub Desktop.
Save hehongwei44/ce075343fc539c1e4c75 to your computer and use it in GitHub Desktop.
判断输入的参数是否是个合格的URL
/**
* @descrition:判断输入的参数是否是个合格的URL,由于url的灵活性和多样性,一下代码并不能测试所有的url都是合法的
* @param:str->待判断的url参数
* @return :true表示符合改正则。
**/
var isURL = function (str) {
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
+ "((/?)|"
+ "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
var re = new RegExp(strRegex);
return re.test(str);
}
@hehongwei44
Copy link
Author

该正则无法通配所有的URL,请慎用

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment