如何计算文本中单词的频率
How to calculate frequency of word in text
如何实现javascript函数来计算文本中单词的频率
frequencies('foo foo bar foo bar buz', ['foo', 'bar']);
should return {"bar": 2, "foo": 3}
这样的事情应该这样做
function frequencies(str, opts) {
var o = {};
opts.forEach(function(opt) { o[opt] = 0; });
str.split(/'s+/).forEach(function(x) { if (x in o) o[x]++; });
return o;
}
小提琴
如果你可以使用下划线/lodash,它就像
:function frequencies(str) {
return _.countBy(str.split(' '));
}
这个怎么样:
function frequencies(str, words){
var ret = {}, split = str.split(' ');
for(var i = 0; i < split.length; i++){
var currentWord = split[i];
if(!currentWord || !~words.indexOf(currentWord)) continue;
ret[currentWord] = !ret[currentWord] ? 1 : ret[currentWord]+1;
}
return ret;
}
console.log(frequencies('foo foo bar foo bar buz', ['foo', 'bar']));
http://jsfiddle.net/uqgtqy01/1/
相关文章:
- 当鼠标悬停在文本中的单词上时显示警报
- 匹配一个单词,其中候选人可以跨越顺序组(跨度)
- 如何使用jquery强制一个单词更改大小写等以保留品牌
- 拆分单词jquery
- 如何让程序检查所选单词中是否有按键
- 如何在悬停时流畅地更改单词
- EmberJS中支持单字母单词模型
- 字母计数:返回重复字母数最多的第一个单词
- 如何在Javascript中从字符串中提取某些单词
- 如何创建一个“;表单弹出框“;在chrome中右键单击时位于突出显示的单词上方
- 在javascript中查找单词
- 使用jQuery检查提交时添加到句子中的单词
- 如何在PHP中获取特定的字符串单词
- 停止较大单词的重叠
- 如何在没有单词的情况下从命令行运行Node.js程序'节点'
- 用于匹配不带字符的单词的正则表达式
- 单词中重复出现字母频率最高的字符串
- 如何计算文本中单词的频率
- 制作单词频率直方图
- 根据频率CSS HTML分发单词