有时候我们需要对某一篇文章或新闻进行数据统计,看哪些字出现的频率最高呢?下面是在web页面中使用的两个核心方法:
//统计某一字符串中每一个字符出现的次数
function tongji(str) {
if (str == "")
return;
var array = str.split(""); //转成字符数组
var hash = {};
for (var i = 0; i < array.length; i++) {
var key = array[i];
if (!hash[key]) {
hash[key] = 1;
}
else {
hash[key]++;
}
}
}
//只统计中文、数字、大小写、空白字符等出现的次数
function simpleTongJi(str)
{
var dx = 0, xx = 0, sz = 0, zw = 0, qt = 0, kb = 0, hs = 1, zj = 0;
for (i = 0; i < str.length; i++) {
var c = str.charAt(i);
if (c.match(/[\u4e00-\u9fa5\uf900-\ufa2d]/)) { //匹配中文 [\\u4e00-\u9fa5\uf900-\ufa2d]
zw++;
}
else if (c.match(/\d/)) { //匹配数字
sz++;
}
else if (c.match(/[A-Z]/)) { //匹配大写
dx++;
}
else if (c.match(/[a-z]/)) { //匹配小写
xx++;
}
else if (c.match(/\s/)) { //匹配空白字符 空格、制表符、
kb++;
if (c.match(/[\r\n]/)) { //匹配空白字符 空格、制表符、换页符
hs++;
}
}
else
qt++;
}
}
下面是用上面方法做出来的效果哦。详情参考 http://www.haomeili.net/String/WenZiFenBu