我有这个网址:
http://thisjs.blogspot.co.il/2015/01/blog-post_7.html
在 javascript 中,我有这个模式来检查它的有效性,由于某种原因返回 false,这里缺少什么?
var pattern = new RegExp('^(https?:\\/\\/)?'+ // protocol
'((([a-z\\d]([a-z\\d-]*[a-z\\d])*)\\.)+[a-z]{2,}|'+ // domain name
'((\\d{1,3}\\.){3}\\d{1,3}))'+ // OR ip (v4) address
'(\\:\\d+)?(\\/[-a-z\d%_.~+#!]*)*'+ // port and path
'(\\?[;&a-z\\d%_.~+=-]*)?'+ // query string
'(\\#[-a-z\\d_]*)?$','i'); // fragment locator
if(!pattern.test(str)) {
return false;
} else {
return true;
}
我想要上面提到的 url 为 true 吗?我首先看哪里?
最佳答案
您需要:
'(\\:\\d+)?(\\/[-a-z\\d%_.~+#!]*)*'+ // port and path
即\\d
而不是 \d
,否则您只是匹配文字 d
而不是数字。
关于javascript - 没有 www 但最后带有 .html 的 url 的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28316191/