计算字符串中每个字符出现的次数
相比这类的方法已经有很多了,我是因为有次招聘面试的笔试题就是这个,然后回来之后做了下;
现在拿出来跟大家分享下,我只是用了一种办法 牛人们可以就代码优化和实现方法上多做文章;我就不深究下去了!
我写的函数为
//使用方法只要把要处理的字符串传入函数中就行了
function numInstring(str)
{
var text="";
//循环的套出每个字符出现的次数 str会慢慢的变短直到为空
while(str!="")
{
//先将字符打散
var newstr=str.split("");
var count=0;
//求得第一个字符出现的次数
for(var i=0;i < newstr.length;i++)
{
if(newstr[0]==newstr[i])
{
count++;
}
}
//在字符串中删掉跟第一个字符一样的所有字符
var re=new RegExp(newstr[0],"g");
str=str.replace(re,"");
text+=newstr[0]+":"+count+"次;";
}
return text;//我这里返回的是一段文本 可以自己改写成自己想要的形式
}
主要考的是对字符串的处理,这里用到了split和replace结合然后再使用正则,有什么建议或者改进的地方都可以给我留言,相互进步O(∩_∩)O~~!!!;
相关新闻>>
- 发表评论
-
- 最新评论 更多>>