【发布时间】:2012-08-24 23:08:28
【问题描述】:
对于这个原型 url 检查器。请注意,我现在要做的就是检查长度。
url: /:\/\/(www\.)?.{1,200}\..{1,1800}/,
Jslint.com 报错
Insecure '.'
我在这个 SO post. 上的这个否定字符集也有类似的错误
鉴于这种背景,我认为很明显 jslint 不喜欢允许全部或几乎全部作为测试模式。
所以,我只需要更换 .域和域之后的部分具有有效的字符集。
对于我可以简化为的域
[a-zA-Z0-9\-]
域之后的部分的字符集是什么...即在 foo.com/ 之后
所以有
//
紧随其后
www.(optional)
紧随其后
foo.boo.moo.(note it matched up until the last .) ( this character set is listed above)
紧随其后
X
如何将所有 X 组合在一起:
http://www.foo.X
我不关心提取端口或查询信息,我只需要域之后所有内容的字符集,以使正则表达式根据 jslint “安全”。
注意,我只是在尝试逐步改进。
JavaScript, The Good Parts 在正则表达式章节中有一个很好的 URL 检查器,但不是我现在需要的。
【问题讨论】:
-
@Felix - 来自 '94 和 '08
标签: javascript regex