Javascript 正则表达式注释冲突
我的正则表达式有问题。正则表达式中有一个“/”显然破坏了我代码的其余部分。。。 这是一个网站验证,这是迄今为止我发现的最好的正则表达式,但MVC是一个痛苦Javascript 正则表达式注释冲突,javascript,jquery,regex,asp.net-mvc,Javascript,Jquery,Regex,Asp.net Mvc,我的正则表达式有问题。正则表达式中有一个“/”显然破坏了我代码的其余部分。。。 这是一个网站验证,这是迄今为止我发现的最好的正则表达式,但MVC是一个痛苦 function CheckWeb() { if ($("#Company_ContactType").val() == 'WEB') { if (/_^(?:(?:https?|ftp):/ / )( ? : \S + ( ? ::\S * ) ? @ @) ? ( ? : ( ? !10( ? : \.\d { 1
function CheckWeb() {
if ($("#Company_ContactType").val() == 'WEB') {
if (/_^(?:(?:https?|ftp):/ / )( ? : \S + ( ? ::\S * ) ? @ @) ? ( ? : ( ? !10( ? : \.\d { 1, 3 }) { 3 })( ? !127( ? : \.\d { 1, 3 }) { 3 })( ? !169\ .254( ? : \.\d { 1, 3 }) { 2 })( ? !192\ .168( ? : \.\d { 1, 3 }) { 2 })( ? !172\.( ? : 1[6 - 9] | 2\ d | 3[0 - 1])( ? : \.\d { 1, 3 }) { 2 })( ? : [1 - 9]\ d ? | 1\ d\ d | 2[01]\ d | 22[0 - 3])( ? : \.( ? : 1 ? \d { 1, 2 } | 2[0 - 4]\ d | 25[0 - 5])) { 2 }( ? : \.( ? : [1 - 9]\ d ? | 1\ d\ d | 2[0 - 4]\ d | 25[0 - 4])) | ( ? : ( ? : [a - z\ x { 00 a1 } - \x { ffff } 0 - 9] + - ? ) * [a - z\ x { 00 a1 } - \x { ffff } 0 - 9] + )( ? : \.( ? : [a - z\ x { 00 a1 } - \x { ffff } 0 - 9] + - ? ) * [a - z\ x { 00 a1 } - \x { ffff } 0 - 9] + ) * ( ? : \.( ? : [a - z\ x { 00 a1 } - \x { ffff }] { 2, })))( ? ::\d { 2, 5 }) ? ( ? : /[^\s]*)?$_iuS/.test) {
var resultDiv = $("#IsValid");
resultDiv.text("");
}
});
}
我有没有办法确保它不会在“测试”之外注释掉
应该是这样的:
(?:(?:https?|ftp):\/\/ )
在结尾处还有另一个需要转义的正斜杠:
( ? : /[^\s]*)?$_iuS
应该是:
( ? : \/[^\s]*)?$_iuS
这导致regex101没有模式错误为什么在JS中使用PCRE regex?老实说,我对regex不太了解,所以我只使用了它,因为它是最全面的,但除此之外,我不知道…在每个
/
之前使用反斜杠。比如..\/\/
谢谢!这很有帮助…但现在它在其他地方被打破了\谢谢!我真的很感谢你的帮助!
( ? : \/[^\s]*)?$_iuS