主要为了校验重复字符出现三次以上,研究了一下正则和js的实现方法,str可以根据实际需要替换
- 这个可以会在一个对象里返回每个字符的出现个数,但是不能校验词组,可以匹配子母数字以及中文。
var counter = {};
for (let i = 0; i < str.length-1; i++ ) {
counter[str[i]]? counter[str[i]]++:counter[str[i]] = 1;
}
console.log(counter);
- 第一个可以校验一个字的,并返回重复三次的内容。第二个可以校验一个词,也就是两个字组成,并返回重复三次的内容,同理,如果是校验三个字组成的词,可以把正则中代表中文的再加上一个。可以匹配中文。
var reg1 = /([\u4E00-\uFA20])\1\1/g;
var reg2 = /([\u4E00-\uFA20][\u4E00-\uFA20])\1\1/g
str.match(reg1);
str.match(reg2);
[\u4E00-\uFA20]代表中文编码
3.正则校验字母和数字,也跟校验中文的逻辑一致
var reg = /(\w)\1\1/g;
str.match(reg);