我使用 preg_match 进行服务器端验证,但我也想有一个客户端。
对于我的 PHP,我允许这些字符:
'/^[A-Za-z][a-zA-Z0-9 .:-,!?]+$/'
如何在 JavaScript 中使用 match()
创建字符白名单?
编辑:
我试过了,但由于某种原因没有成功:
我的调试器在 if 语句之前说:
218SyntaxError:无效的正则表达式:字符类中的范围乱序
$('#title').blur(function(){
input = $('#title').val();
var invalidChars = /^[^a-z][^a-z\d .:-,!?]+$/i;
if (!invalidChars.test(input)){
alert('true');
}
else {
alert('false');
}
});
最佳答案
以上所有答案都是正确的,尽管只是一个旁注:不是编写 [A-Za-z]
,而是一个简单的 /[a-z]/i
就足够了。 i
是一个不区分大小写的标志...
关于javascript - 如何将 match() 用于字符白名单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10147935/