能不能告诉我当不允许三个相同字符时的模式 我有一个名称字段,其中很少进行验证
我使用indexOf
进行了检查。
我们可以为此做一个正则表达式吗?我用Google搜索找不到它
我尝试过这样
val ='a'
var phonenoRegex = /^a-zA-Z+$/;
if(val.toLowerCase().indexOf('test') !=-1&& phonenoRegex.test(val)){
alert('false')
}else {
alert('true')
}
答案 0 :(得分:0)
您可以使用正则表达式中的替代方法来完成所有这些操作。
if (/test|[^a-z]|(.)\1\1|abc|bcd|cde|def|...|wxy|xyz/i.test(val)) {
alert('false');
} else {
alert('true');
}
(.)\1\1
匹配3个相同字符的重复; \1
是对.
所匹配字符的反向引用。您只需在regexp中简单列出所有字母作为替代字母即可测试连续字母(用我跳过的所有缺失字母替换...
)。您不需要toLowerCase()
,因为i
选项使它不区分大小写。