【发布时间】:2011-01-13 12:38:45
【问题描述】:
我想在 JavaScript 中使用正则表达式进行表单输入验证。 这些是一个字符串,它不应该有 或我提到的任何特定字符集。如果字符串没有这些字符,则测试应该通过。
那么如何在正则表达式中指定不包含字符。
示例:
stringX = "vijay<>@$%_"
我的目标是
- 字符串不应包含 '' 字符。
- 如果 stringX 没有这些字符,测试应该通过 return true。
注意:
我可以:
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 个字符串。
- 案例 1:只有位数字。我会使用正则表达式:/^[\d]*$/
- 案例 2:没有 .我会使用正则表达式:/^[`]*$ 因为我不想指定所有字符都被允许。我想指定字符 这是不允许的。
但我的验证功能仅适用于案例 1。 与案例 2 一样,我不会得到预期的结果。只有当字符串只有 ,` 字符时,Validate() 才会给我 true。
【问题讨论】:
-
你所做的看起来很简单。你不喜欢它的什么?
-
我在上面更新了我的问题。因为我有一个通用的 validate() 函数,所以我不得不说否定。
标签: javascript regex