javascript计算字符串中每个字符出现次数

 代码如下 复制代码

function charCount(str) {
  // 用正则匹配将各个字符从字符串中替换掉,直接用正则匹配的match().length获取每个字符出现的次数
  str = str.replace(/s/ig, "");//去除空格
  var strArr = str.split("");
  var result = [],reg;
  for (var i = 0; i < strArr.length; i++) {
   if (str.indexOf(strArr[i]) != -1) {
    reg = new RegExp(strArr[i], "ig");
    counts=str.match(reg).length;
    str = str.replace(reg, "");
    result.push(strArr[i] + ": " + counts);
   } www.111cn.net
  }
  return result;
 }
var str="This section of the site is dedicated to the JavaScript language itself, the parts that are not specific to Web pages or other host"
var result=charCount(str);
console.log(result.sort());

法2:
用正则匹配将各个字符从字符串中替换掉,替换前字符串长度-替换后字符串长度,差值即为该字符出现的次数

 代码如下 复制代码

function charCount(str) {
  // 用正则匹配将各个字符从字符串中替换掉,替换前字符串长度-替换后字符串长度,差值即为该字符出现的次数!
  str = str.replace(/s/ig, "");//去除空格
  var strArr = str.split("");
  var result = [],beforeLength, afterLength, reg;
  for (var i = 0; i < strArr.length; i++) {
   if (str.indexOf(strArr[i]) != -1) {
    beforeLength = str.length;
    reg = new RegExp(strArr[i], "ig");
    str = str.replace(reg, "");
    afterLength = str.length;
    result.push(strArr[i] + ": " + (beforeLength - afterLength));
   } www.111cn.net
  }
  return result;
 }
var str="This section of the site is dedicated to the JavaScript language itself, the parts that are not specific to Web pages or other host"
var result=charCount(str);
console.log(result.sort());

第1种方法用的变量较少,也相对比较好理解!

时间: 2024-10-25 15:33:34

javascript计算字符串中每个字符出现次数的相关文章

JavaScript计算字符串中每个字符出现次数的小例子

这篇文章介绍了在JS中计算字符串中每个字符出现的次数,有需要的朋友可以参考一下   代码如下: 复制代码 代码如下: function numInstring(str){     str=str.replace(/ /ig,"");     var strArr=str.split("");     var result=[],beforeLength,afterLength,reg;     for(var i=0;i<strArr.length;i++){

JavaScript计算字符串中每个字符出现次数的小例子_javascript技巧

代码如下: 复制代码 代码如下: function numInstring(str){    str=str.replace(/ /ig,"");    var strArr=str.split("");    var result=[],beforeLength,afterLength,reg;    for(var i=0;i<strArr.length;i++){        if(str.indexOf(strArr[i])!=-1){       

JavaScript统计字符串中每个字符出现次数完整实例_javascript技巧

本文实例讲述了JavaScript统计字符串中每个字符出现次数的方法.分享给大家供大家参考,具体如下: 这是一个面试题,要求随便给你一个字符串,让你求出字符串中每个字符出现的次数. 先来看看运行效果截图: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&

php获取字符串中各个字符出现次数的方法_php技巧

本文实例讲述了php获取字符串中各个字符出现次数的方法.分享给大家供大家参考.具体实现方法如下: <?php //获取字符串是哪一个字符出现的字数最多 $str = "sdfhletlsflahlajgfd;lsje;r;wj;ralajfe149253573"; //方法一 $arr = str_split($str); //字符串分隔到数组中 $arr = array_count_values($arr); //用于统计数组中所有值出现的次数,返回一个数组 //键名为原数组的

java统计字符串中重复字符出现次数的方法_java

本文实例讲述了java统计字符串中重复字符出现次数的方法.分享给大家供大家参考,具体如下: package com; import org.junit.Test; /** * 统计一个字符串的重复字符出现的次数 * * @author zdw * */ public class StringTest { @Test public void test() { String s = "fdfaacceeeeeeeeeeeegghikkkkkoooo"; count(s); } public

指针-计算字符串中子串出现的次数。

问题描述 计算字符串中子串出现的次数. 要求:用一个子函数substring()实现,参数为指向字符串和要查找的子串的指针,返回次数 解决方案 #include using namespace std; int subString(char *s,char *t) { int count = 0; bool flag = false; char *temp = NULL; while(*s != '') { temp=t; while(*temp !=......<br/><strong

python统计字符串中指定字符出现次数的方法_python

本文实例讲述了python统计字符串中指定字符出现次数的方法.分享给大家供大家参考.具体如下: python统计字符串中指定字符出现的次数,例如想统计字符串中空格的数量 s = "Count, the number of spaces." print s.count(" ") x = "I like to program in Python" print x.count("i") PS:本站还提供了一个关于字符统计的工具,感兴

ASP.NET从字符串中查找字符出现次数的具体实现方法_实用技巧

首先想到的方法当然是从头遍历字符串并统计: 复制代码 代码如下: c1=0;for(inti=0;i {if(str[i]=='A'){c1++;}} 第二种方法也很容易想到,将字符串中所有要查找的字符去除,然后比较去除前后的字符串长度即可.这种方法遭到了某人的鄙视,据说性能很差而且多占空间. 复制代码 代码如下: c2=str.Length-str.Replace("A",String.Empty).Length; 接下来某人又提出了第三种方法,是用要查找的字符为分隔符,将原字符串分

JavaScript访问字符串中单个字符的两种方法_javascript技巧

概述 JavaScript是一门很灵活的语言,也提供了很多原生的函数供我们编程使用.这篇文章主要对javascript中如何访问字符串中的单个字符做一下介绍. javascript中一切皆为对象,要访问字符串中的单个字符主要有两种方法:数组索引和charAt()函数. 索引和charAt() 索引方式访问单个字符串 在javascript中,字符串可以被当做数组来处理,所以我们可以用数组下标的方式来访问单个字符.代码如下: 复制代码 代码如下: <script type="text/jav