我想在JavaScript中使用正则表达式进行表单输入验证.这些字符串不应该包含<,>或我提到的任何特定字符集.如果字符串没有那些字符,则测试应该通过.
那么如何在正则表达式中指定不要有char.
例:
stringX = "vijay<>@$%_"
Run Code Online (Sandbox Code Playgroud)
我的目标是
注意:
我可以 :
stringX = "vijay<>@$%_"
regExp=/[<>`]/;
if(!rexExp.test(stringX)) {
doSomthing()
}
Run Code Online (Sandbox Code Playgroud)
但我不想要这个.
因为我最终会遇到一个小麻烦.
我有一个名为validate()的通用函数
function validate(stringX, regExp)
{
if(rexExp.test(stringX)) { // see there is no "!" in the condition.
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
假设我想验证2个字符串.
但我的验证功能仅适用于案例1.与案例2一样,我不会得到预期的结果.只有当string只有<,>,`字符时,Validate()才会给出真值.
如果你对字符串中的任何其他字符都没问题,这将匹配所有没有字符<,>和`的字符串:
regexp=/[^<>`]*/;
Run Code Online (Sandbox Code Playgroud)
编辑:使用行开始/结束锚点修正表达式(感谢MizardX):
regexp=/^[^<>`]*$/;
Run Code Online (Sandbox Code Playgroud)