【发布时间】:2017-03-23 00:18:51
【问题描述】:
这里,
我正在使用以下字符串验证 URL,它应该是 http/https 或 ip 地址以及查询字符串和不同的括号方括号 []。
我想防止下面的 url 括号
2)http://192.0.0.0/b4d2f30f-d617-403a-bb2f-dec755d01192?[publisher[client_id]Id] - 不允许
应该用什么正则表达式来防止[publisher[client_id]Id] 刺痛?
我对上面的字符串使用以下正则表达式
var regex = /(http|https):\/\/(\w+:{0,1}\w*)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%!\-\/]))?/;
if(!regex .test(str)) {
return false;
} else {
return true;
}
相同的代码应该改变什么?
请帮助我。
【问题讨论】:
-
您的问题并不能说明您现有的正则表达式在哪里无法发挥作用。请尝试更具体,并尝试让我们重现您的问题。
-
是的,我想说我不想在查询字符串中允许
[publisher[client_id]Id]。现在明白了吗?或需要更多解释 -
如果您要查找的只是
[publisher[client_id]Id],那么字符串的其余部分无关紧要。查找该字符串并忽略其余部分。 -
也许正面和负面的列表(什么应该匹配,什么不应该)会有所帮助
-
@ppovoski 一切正常,但我必须添加正则表达式来防止这种情况
[publisher[client_id]Id]这应该是允许[publisher_id]
标签: javascript regex validation