統(tǒng)計出現(xiàn)最多的字符次數(shù)的js代碼
更新時間:2010年12月03日 20:58:58 作者:
一小段代碼,經(jīng)常出現(xiàn)在面試筆試題中的:統(tǒng)計一個字符串中出現(xiàn)最多的字符的次數(shù),可以是英文或者數(shù)字。
應(yīng)用正則表達(dá)式的全局匹配,可以匹配出字符出現(xiàn)的次數(shù),比較這些次數(shù),將最大的保存并返回。代碼如下:
var countMost = function(str){
if(!str) return;
var _count = 0, _temp = 0, _reg, _char;
for(var i=0; i<str.length; i++){
_reg = new RegExp(str.charAt(i), 'g');
_temp = str.match(_reg).length;
if(_temp > _count){
_count = _temp;
_char = str.charAt(i);
}
}
return _count;
//return {count:_count, char:_char};
};
注釋掉的代碼可以一并返回出現(xiàn)最多次數(shù)的字符。
復(fù)制代碼 代碼如下:
var countMost = function(str){
if(!str) return;
var _count = 0, _temp = 0, _reg, _char;
for(var i=0; i<str.length; i++){
_reg = new RegExp(str.charAt(i), 'g');
_temp = str.match(_reg).length;
if(_temp > _count){
_count = _temp;
_char = str.charAt(i);
}
}
return _count;
//return {count:_count, char:_char};
};
注釋掉的代碼可以一并返回出現(xiàn)最多次數(shù)的字符。
相關(guān)文章
關(guān)于動態(tài)執(zhí)行代碼(js的Eval)實例詳解
下面小編就為大家?guī)硪黄P(guān)于動態(tài)執(zhí)行代碼(js的Eval)實例詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-08-08JavaScript Array Flatten 與遞歸使用介紹
用 JavaScript 將 [1,2,3,[4,5, [6,7]], [[[8]]]] 這樣一個 Array 變成 [1,2,3,4,5, 6,7,8] 呢?傳說中的 Array Flatten2011-10-10網(wǎng)頁禁用右鍵菜單和鼠標(biāo)拖動選擇方法小結(jié)
本文主要給大家總結(jié)了一下在網(wǎng)頁中禁用鼠標(biāo)右鍵和鼠標(biāo)拖動選擇的幾種常用的方法,十分的實用,有需要的小伙伴參考下。2015-02-02AJAX使用了UpdatePanel后無法使用alert彈出腳本
今天在做項目的時候發(fā)現(xiàn)個問題。。使用UpdatePanel后alert腳本就要報錯了。2010-04-04