如何使用正则表达式在JavaScript中的单词中找到最多重复的字母?
重复的字母可以与其他字母分隔,例如“ memo”:“ m”与“ e”分隔。
例如:单词“ greatest”应返回2,导致“ e”或“ t”重复两次,两次为最大重复次数。
我尝试过类似/([a-z]{1,})\1/
的模式,但不适用于这种情况。
先感谢您。
最佳答案
这是完成此操作的JavaScript方法。无法使用正则表达式执行此操作。
var exp = 'hello world' ;
var expCounts = {};
var maxKey = '';
for(var i = 0; i < exp.length; i++) {
var key = exp[i];
if(!expCounts[key]){
expCounts[key] = 0;
}
expCounts[key]++;
if(maxKey == '' || expCounts[key] > expCounts[maxKey]){
maxKey = key;
}
}
console.log(maxKey + ":" + expCounts[maxKey]); //logs l:3
JSFiddle
https://jsfiddle.net/v72qa872/
关于javascript - 在Javascript中找出单词中重复字母的最大数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33273735/