我想在 JavaScript 中使用正则表达式进行表单输入验证。
这些是一个字符串,不应包含 或我提到的任何特定字符集。如果字符串不包含这些字符,则测试应该通过。
那么我如何在正则表达式中指定没有 char.
Example:
stringX = "vijay<>@$%_"
我的目标是
- 字符串不应包含“”字符。
- 如果 stringX 没有这些字符,测试应该通过返回 true。
Note:
我可以 :
stringX = "vijay<>@$%_"
regExp=/[<>`]/;
if(!rexExp.test(stringX)) {
doSomthing()
}
但我不想要这个。
因为我最终会遇到一个小麻烦。
我有一个名为 validate() 的通用函数
function validate(stringX, regExp)
{
if(rexExp.test(stringX)) { // see there is no "!" in the condition.
return true;
}
}
假设我想验证 2 个字符串。
- Case 1: having只有数字。我会使用 regExp : /^[\d]*$/
- Case 2: 没有 。我会使用正则表达式:/^[`]*$
因为我不想指定允许的所有字符。我想指定字符
这是不允许的。
但我的验证函数仅适用于情况 1。
与情况2一样,我不会得到预期的结果。仅当字符串仅包含 ,` 字符时,Validate() 才会给出 true。
如果您同意字符串中存在任何其他字符,则这将匹配所有不包含字符 和 ` 的字符串:
regexp=/[^<>`]*/;
Edit:使用行开始/结束锚点更正了表达式(感谢 MizardX):
regexp=/^[^<>`]*$/;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)