javascript 统计、去除重复字符

/**//*  
    功能:统计、去除重复字符
    @param str 需要统计的字符串
    说明:常用于字符串中重复字符,或者数组中重复的字母、数字等个数统计。
        此处从网上收集两种典型的类型,分别有两种实现方法,其他还有许多变种,从不同角度编写,可搜索学习。
       
        待统计的数据,不论是数组和字符串都可以,只用借助String.split()或 Array.join()
            转换为函数参数要求的类型即可。
*/  

// 类型一:借助新建对象来保存数据

 代码如下 复制代码

var count1 = function (str) {
    var map = {}, maxCount = 0, maxChar, undefined, i = str.length;
    while (i--) {
        var t = str.charAt(i);
        map[t] == undefined ? map[t] = 1 : map[t] += 1;
        if (map[t] > maxCount) {
            maxChar = t;
            maxCount = map[maxChar];
        }
    }
    return "字符:" + maxChar + "次数:" + maxCount;
}

function s_0(a) { // 此处参数应为数组类型
    var b = {}, c = [], i;
    for (i = 0; i < a.length; i++){
        if (!b[a[i]]) {
            c[c.length] = a[i], b[a[i]] = true;
        }
    }
    return c;
}

// 类型二:正则表达式匹配统计

 代码如下 复制代码

var count2 = function (str) {
    var most = str.split('').sort().join('').match(/(.)1*/g); //排列重复字符
    most = most.sort(function (a, b) { return a.length - b.length }).pop(); //按出现频繁排序
    return most.length + ': ' + most[0];
}

function s_1(a) {
    var a = a.join(""), b = [];
    while (a.length > 0)
            a = a.replace(new RegExp((b[b.length] = a.charAt(0)), "g"), "");
    return b;
}

时间: 2025-01-07 04:27:41

javascript 统计、去除重复字符的相关文章

JavaScript字符串删除重复字符的方法_javascript技巧

本章节介绍一下如何删除一个字符串中重复的字符,先不管有没有实际价值,就当做是一种对算法的学习也是挺不错的. 代码如下: function dropRepeat(str){ var result=[]; var hash={}; for(var i=0, elem; i<str.length;i++){ elem=str[i]; if(!hash[elem]){ hash[elem]=true; result=result+elem; } } return result; } 以上代码中的函数可以

php去除重复字符

方法一 //假定以";"为每组词的分割符  03 $text = 'a->b;b->a;c->a;a->c';  04 $arr = explode(";", $text);  05 $arrSorted = array();  06 foreach($arr as $str) {  07     list($front, $back) = explode("->", $str);  08     //将唯一的字符串

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

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

js 除去字符串中的重复字符的正则表达

  <html> <head> <title>利用正则表达法除去字符串中的重复字符</title> </head> <body> <script language="网页特效"> str = "google" str1 = str.replace(/(.).*/g,"$1") document.write(str + "<br>")

sql如何去除重复数据

sql如何去除重复数据, 很多朋友一听就会想到DISTINCT ,那我们来看看distinct的用法吧. 下面来看看语法: SELECT DISTINCT column_name(s)FROM table_name 下面看个简单的例子: SELECT DISTINCT City FROM Persons   好了下面我们再来看看另一种方法用group by 来做吧,这个想法是从网上来的下面我们来看看下面的sql.   Select *,m_id from tbname group by m_id

JS去除重复并统计数量的实现方法_javascript技巧

js去除重复并统计数量方法 首先点击按钮触发事件,然后用class选择器,迭代要获取的文本(这里最好用text()方法)加入到Array()集合里.然后创建一个map{},遍历Array()集合,取一个值作为map的key,然后判断是否有值,如果没有就输入值1,如果有就累加1.最后就可以统计出重复的有多少个. for(var key in map){}为迭代方法. 这里附上文本格式,方便大家复制. jQuery("#count").on("click",functi

javascript模拟map输出与去除重复项的方法_javascript技巧

本文实例讲述了javascript模拟map输出与去除重复项的方法.分享给大家供大家参考.具体方法如下: 1.Javascriptmap输出 function Map(){ // private var obj = {} ;// 空的对象容器,承装键值对 // put 方法 this.put = function(key , value){ obj[key] = value ;// 把键值对绑定到obj对象上 } // size 方法 获得map容器的个数 this.size = functio

运用javascript如何去除数组中重复的数字或者字符串?

问题描述 运用javascript如何去除数组中重复的数字或者字符串? 运用javascript如何去除数组中重复的数字或者字符串?谢谢了.方法越多越好,谢谢. 解决方案 JavaScript实现数组去除重复整理 javascript 去除数组中重复项的几种方法 解决方案二: 本人只会用JAVA写

javascript中去除数组重复元素的实现方法【实例】_javascript技巧

在实际应用中,我们很多时候都可能需要去除数组中的重复元素,下面就是javascript数组去重的方法实现: <script language="javascript"> <!-- /*判断数组中是否存在某个元素的方法*/ function isExistInArr(_array, _element){ if(!_array || !_element) return false; if(!_array.length){ return (_array == _elemen