// split():字符串中的方法,把字符串轉成數組。 // sort():數組中的排序方法,按照ACALL碼進行排序。 // join():數組中的方法,把數組轉換為字符串 function demo(str) { var arr = str.split(''); //把字符串轉換為數組 str = arr.sort().join(''); //首先進行排序,這樣結果會把相同的字符放在一起,然后再轉換為字符串 var value = ''; var index = 0; var re = /(\w)\1+/g; //匹配字符,且重復這個字符,重復次數至少一次。 str.replace(re, function ($0, $1) { //alert($0); 代表每次匹配成功的結果 : aa dd jj kk l sssssssssssssssss //alert($1); 代表每次匹配成功的第一個子項,也就是\w: a d j k l S if (index < $0.length) { //如果index保存的值小於$0的長度就進行下面的操作 index = $0.length; // 這樣index一直保存的就在最大的長度 value = $1; //value保存的是出現最多的這個字符 } }); alert('最多的字符:' + value + ',重復的次數:' + index); // s 17 } //找重復項最多的字符個數 demo("aabbabbbbbcck");