您能告诉我如何找到字符串中重复次数最多的单词吗?示例如果输入为“您如何做”,输出为“做”
var str="how do you do"
function findMostReaptedWord(str){
var res = str.split(" ");
alert(res.length);
var count;
var compareString;
for(var i=0;i<res.length ;i++){
count=0;
compareString=res[i]
for (j=0;i<res.lenth ;j++){
if(compareString==res[j]){
count++
}
}
}
}
alert(findMostReaptedWord(str))
我在评论中提出了这个想法。它在代码中:
function findMostReaptedWord(str){
var counts = {}, mr, mc;
str.match(/\w+/g).forEach(function(w){ counts[w]=(counts[w]||0)+1 });
for (var w in counts) {
if (!(counts[w]<mc)) {
mc = counts[w];
mr = w;
}
}
return mr;
}
一些细节:
str.match(/\w+/g)
更好的语言分解。您所需要的任何东西都不是空格,也不是单词或单词的一部分。counts
是地图给出的每个单词出现的次数(即,counts["do"]
是2
)本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句