javascript RegExp 验证 url 表达式
javascript RegExp validate url expression
我已经找到了很多关于这个主题的帖子,但是没有帖子处理我的特定问题。
这是我使用的正则表达式(在此网站上找到):
function validateUrl(value){
return /[-a-zA-Z0-9@:%._'+~#=]{2,256}'.[a-z]{2,6}([-a-zA-Z0-9@:%_'+.~#?&//=]*)/i.test(value);
}
这将验证我的 url 是否正确,直到以下一点:
mydomain.tld/mypage/this'go(es{wro[ng
我的函数返回 true,即使存在不允许的字符,例如:'
或"
或(
或)
或[
或]
或{
或}
我不明白为什么允许这样做。我有这个:[-a-zA-Z0-9@:%_'+.~#?&//=]
在我看来应该返回"false
"...
您的正则表达式几乎可以工作。在字符串mydomain.tld/mypage/this'go(es{wro[ng
中,它与 mydomain.tld/mypage/this
匹配。由于您没有在两端放置锚点,因此它确实匹配(部分匹配)。
只需将其更改为:
^[-a-zA-Z0-9@:%._'+~#=]{2,256}'.[a-z]{2,6}([-a-zA-Z0-9@:%_'+.~#?&'/'/=]*)$
^ ^
观看现场演示
请尝试以下操作:
function validateUrl(value){
return /^(http(s)?:'/'/)?(www'.)?[a-z0-9]+(['-'.]{1}[a-z0-9]+)*'.[a-z]{2,5}(:[0-9]{1,5})?('/.*)?$/.test(value);
}
相关文章:
- 通过正则表达式从字符串中提取Url
- 用于确定URL视频ID的正则表达式
- url正则表达式不适用于javascript中的localhost
- JavaScript 中 URL 的正则表达式模式
- 什么'用这个正则表达式查找URL是错误的
- 修改以下正则表达式,使其在URL末尾包含斜杠
- javascript正则表达式url(url子字符串)
- url的正则表达式有问题
- 使用JavaScript正则表达式从html srcset获取图像url
- 与URL参数匹配的正则表达式
- 基于url hash-hullbs.js更改表达式
- 为什么正则表达式不能正确验证网站URL
- JavaScript正则表达式,带有URL激活以及微笑符号等
- 将背景图像URL与正则表达式匹配
- JavaScript 正则表达式以匹配 URL
- 正则表达式 url 与本地主机匹配
- 需要进一步扩展此正则表达式 URL/邮件解析器
- javascript正则表达式url替换
- 不是图像扩展名的Javascript正则表达式url
- JS 正则表达式 url 验证