用JS得到字符串中出现次数最多的字母
更新时间:2008年03月22日 14:27:44 作者:
一个字符串String=“adadfdfseffserfefsefseetsdg”,找出里面出现次数最多的字母和出现的次数。
经典的解答思路为:取出字符串的第一个字符(首字母),利用的字符串的 replace 方法将符合正则表达式(第一个字符)替代为空,此字母出现的次数为原始的字符串长度减去替代后的字符串长度。循环迭代找出长度最长的字母。
[Ctrl+A 全选 注:引入外部Js需再刷新一下页面才能执行]
补充:
复制代码 代码如下:
eval("str = str.replace(/"+getStr+"/g,'')");
可能很多人想这样写 str = str.replace(/getStr/g,”),可结果却是会出错的。为什么呢,在这句中正则表达式匹配的是 getStr 字符串,而不是 getStr 指向的首字母。通过 eval 方法可以避免(首先 getStr 得到指向的首字母,用字符串连接 “str = str.replace(/”+getStr+”/g,”)”,最后在 eval 中执行这段代码,即:先解释Javascript 代码,然后再执行它)。
由于 eval 性能不好,容易出错,而且可读性不好。建议将 eval(”str = str.replace(/”+getStr+”/g,”)”) 改为:
str = str.replace(new RegExp(getStr,"g"),"")
相关文章
深入理解JavaScript 中的匿名函数((function() {})();)与变量的作用域
匿名函数没有实际名字的函数,匿名函数(function() {})();是一个特殊的闭包写法。本文蛀牙给大家介绍JavaScript 中的匿名函数((function() {})();)与变量的作用域,需要的朋友可以参考下2018-08-08超出JavaScript安全整数限制的数字计算BigInt详解
这篇文章给大家分享了超出JavaScript安全整数限制的数字计算BigInt的相关知识点,有兴趣的朋友参考学习下。2018-06-06BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)
这篇文章主要介绍了BootStrap 轮播插件(carousel)支持左右手势滑动的方法(三种)的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下2016-07-07
最新评论