目前只能想到这个
/^[134567890][124567890]{0,4}$/
这个第一位是2或者其他位是3也没有匹配到,有没有什么好的办法
自己写的B站弹幕屏蔽规则,所以只能用一句话正则。
目前只能想到这个
/^[134567890][124567890]{0,4}$/
这个第一位是2或者其他位是3也没有匹配到,有没有什么好的办法
自己写的B站弹幕屏蔽规则,所以只能用一句话正则。
这种需求也是少见,正向不好匹配,推荐楼主反向匹配。
var str = '2333';
var res = /(233+)/.test(str);
if(!res){
console.log('做你的事情')
}else{
console.log('你要排除的')
}
仔细想想你的要求,再加一句长度判断就可以了
var str = '1233322';
var res = /(233+)/.test(str);
if(res && str.length <= 5){
console.log('你要排除的')
}else{
console.log('做你的事情')
}
var arr=['1','12345','12334','12333','23333'];
var reg=/^(?!\d*23{2,})\d{5}$/;
console.log(arr.filter(item=>reg.test(item)))
这样试试
应该是这样
/^(?!23{2,4}\b)\d{1,5}$/
, 请试着用23334或2334去验证高赞的答案。测试数据