如何对不允许使用特殊字符的字段进行验证,这意味着允许AB#,A89 @,@#ASD,但@#$^&或#不被允许.我需要RegEx进行此验证.
最佳答案
str.match(/^[A-Z#@,]+$/)
将匹配一个字符串……
> …以封闭模式开始^并结束$
> …包含任何大写字母A-Z(不符合小写字母)
> …仅包含特殊字符#,@和,
> …至少有1个字符(没有空字符串)
对于不区分大小写的情况,您可以在结尾添加i :(例如/ pattern / i)
**更新**
如果需要验证字段是否仅包含特殊字符,则可以检查字符串是否仅包含非字或数字的字符:
if (str.match(/^[^A-Z0-9]*$/i)) {
alert('Invalid');
} else {
alert('Valid');
}
这将匹配仅包含非字母数字字符的字符串.空字符串也会产生无效.替换*以允许空字符串有效.