[英]What is the easiest way to find out character repetition in a string using JS?
我有一个由7位数字组成的字符串,如果仅重复2位数字创建的字符串,我需要一个返回“ true”的函数,例如:
check('9669669'); // true
check('0000001'); // true
check('5555555'); // false
check('1111123'); // false
我想知道最简单的方法。 谢谢。
这样的事情应该起作用,将唯一字符推入数组中,并检查其长度是否为2
function check(str) {
var arr = [], i = 0, parts = str.split('');
for (var j=0; j<parts.length; j++) {
if (arr.indexOf(parts[j]) === -1) arr.push(parts[j]);
}
return arr.length === 2;
}
或更多幻想
function check(str) {
return str.split('').reduce(function(p, c) {
if (p.indexOf(c) < 0) p.push(c); return p;
}, []).length === 2;
}
您可以全局替换第一个字符两次。
function check2(str){
var fun= function(s){
return s.replace(RegExp(s.charAt(0), 'g'), '')
};
str= fun(str);
return !!(str && fun(str)=== '');
}
var A = ['9669669','0000001','5555555','1111123'];
A.map(CHECK2);
/ *返回值:(Array)[true,true,false,false] * /
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.