Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >统计文本文件中特定词的出现频率

统计文本文件中特定词的出现频率
EN

Stack Overflow用户
提问于 2010-12-23 17:04:47
回答 4查看 11.3K关注 0票数 1

我有一个文本文件存储为字符串变量。对文本文件进行处理,使其只包含小写单词和空格。现在,假设我有一个静态字典,它只是一个特定单词的列表,我想从文本文件中计算字典中每个单词的出现频率。例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Text file:

i love love vb development although i m a total newbie

Dictionary:

love, development, fire, stone

我希望看到的输出如下所示,列出了字典中的单词及其计数。如果它使编码变得更简单,它也只能列出文本中出现的字典单词。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
===========

WORD, COUNT

love, 2

development, 1

fire, 0

stone, 0

============

使用正则表达式(例如"\w+")我可以获得所有匹配的单词,但我不知道如何获得字典中也有的计数,所以我被卡住了。效率在这里至关重要,因为字典很大(大约100,000个单词),文本文件也不小(每个文件大约200KB)。

我很感谢你的帮助。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-12-23 17:08:45

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var dict = new Dictionary<string, int>();

foreach (var word in file)
  if (dict.ContainsKey(word))
    dict[word]++;
  else
    dict[word] = 1;
票数 5
EN

Stack Overflow用户

发布于 2010-12-23 17:09:33

您可以通过对字符串中的单词进行分组并将其转换为字典来计算其数量:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Dictionary<string, int> count =
  theString.Split(' ')
  .GroupBy(s => s)
  .ToDictionary(g => g.Key, g => g.Count());

现在,您只需检查字典中是否存在这些单词,如果存在,则显示计数。

票数 6
EN

Stack Overflow用户

发布于 2010-12-23 17:28:59

使用Groovy regex facilty,我会这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def input="""
    i love love vb development although i m a total newbie
"""

def dictionary=["love", "development", "fire", "stone"]


dictionary.each{
    def pattern= ~/${it}/
    match = input =~ pattern
    println "${it}" + "-"+ match.count
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4520876

复制
相关文章
Linux下Unicorn服务器配置
Unicorn 是什么? 1. 为 Rack 应用程序设计的 HTTP server 2. 是一个利用Unix的高级特性开发的 3. 为具备低延迟,高带宽的连接的客户服务
星哥玩云
2022/06/29
10.1K0
unicorn 记录
unicorn官网:https://www.unicorn-engine.org/
tea9
2022/09/08
5840
unicorn 记录
如何在Ubuntu 14.04上使用Unicorn和Nginx部署Rails应用程序
当您准备部署Ruby on Rails应用程序时,需要考虑许多有效的设置。本教程将帮助您部署Ruby 在 Rails应用程序中的生产环境,使用PostgreSQL作为数据库,在Ubuntu 14.04上使用Unicorn和Nginx。
丰一川
2018/09/28
4.3K0
TW洞见〡Ruby Web服务器:这十五年
文章作者来自:ThoughtWorks - 韩翼。 坦率的说,作为一门年轻的计算机语言,Ruby在最近二十年里的发展并不算慢。但如果与坐拥豪门的明星语言们相比,Ruby就颇显平民范儿,表现始终不温不火,批评胜于褒奖,下行多过上扬。但总有一些至少曾经自称过Rubyist的程序员们,愉快地实践了这门语言,他们没有丝毫的歧视习惯,总是努力尝试各家之长,以语言表达思想,用基准评判高下,一不小心就影响了整个技术发展的进程。 本文谨以Ruby Web服务器技术的发展为线索,回顾Ruby截至目前最为人所知的Web领域中
ThoughtWorks
2018/04/16
2K0
TW洞见〡Ruby Web服务器:这十五年
图解 Unicorn 工作原理
我很早之前,就是通过这篇文章搞懂了 Python Web 应用服务器是个什么鬼,虽然本文讲的是 Ruby 的 Web 应用服务器,但原理是通的所以翻出来推荐给大家,下面是正文。
HelloGitHub
2021/05/14
1.3K0
图解 Unicorn 工作原理
或 、与、异或
& 与 (都是1时,结果才为1) 表示按位与。 &表示按位与操作,我们通常使用0x0f来与一个整数进行&运算,来获取该整数的最低4个bit位,例如,0x31 & 0x0f的结果为0x01。 二进制与运算规则:1&1=1  1&0=0  0&0=0 | 或  (只要有1,那么就是1) 表示按位或 按位或运算 按位或运算符“|”是双目运算符。其功能是参与运算的两数各对应的二进位(也就是最后一位)相或。只要对应的二个二进位有一个为1时,结果位就为1。 ^ 异或 (只要一样结果就是0) 按
Lokinli
2023/03/09
9370
Nginx 作为下载服务器
特殊说明: 解决问题的光鲜,藏着磕Bug的痛苦。 万物皆入轮回,谁也躲不掉! 以上文章,均是我实际操作,写出来的笔记资料,不会出现全文盗用别人文章!烦请各位,请勿直接盗用!
收心
2022/01/19
2.2K0
如何在CentOS 6.5上使用Unicorn和Nginx部署Rails应用程序
在部署基于Rails的Web应用程序时,简单设计的应用程序服务器可以在几分钟内启动并运行。但是,如果您希望更好地控制服务器设置或想要尝试更灵活的新功能,那么使用分层的组件可以帮助您实现目标- 无论是面向未来的部署还是需要引入第三方元素,例如缓存服务器。
水门
2018/08/07
4.1K0
Thin-film Bulk Acoustic Wave Technology
海大指南针
2022/05/16
2420
Thin-film Bulk Acoustic Wave Technology
GaAs Thin Wafer的强度提升探究
上几天研究了一下GaAs的抛光,其实化合物半导体的抛光都会面临薄晶圆强度小,晶圆有着天然的解离镜像,容易裂片的问题。
用户2760455
2022/11/15
6550
GaAs Thin Wafer的强度提升探究
Gentoo下Nginx+thin构建rails环境
使用emerage的话,需要在/etc/portage/package.keywords中加入
EltonZheng
2021/01/22
8710
unicorn在安卓中使用
https://github.com/RikkaApps/Riru/releases
tea9
2023/03/08
9430
使用Unicorn和Nginx在Ubuntu 14.04上配置Ruby on Rails应用程序
Ruby on Rails 是一个流行的 Web 应用程序框架,允许开发人员创建动态 Web 应用程序。本指南介绍如何在 Ubuntu 14.04 上使用Unicorn和 nginx 在服务器上部署Rails应用程序。
LPD6375
2018/08/29
7K0
4.7 服务器上的 Git - GitWeb
如果你对项目有读写权限或只读权限,你可能需要建立起一个基于网页的简易查看器。 Git 提供了一个叫做 GitWeb 的 CGI 脚本来做这项工作。
shaonbean
2019/05/26
9550
Kafka 生产与消费
接着上一篇博客,本篇主要介绍Kafka的生产与消费的过程。Producers往Brokers里面的指定Topic中写消息,Consumers从Brokers里面拉去指定Topic的消息。
大鹅
2019/09/17
1.2K0
Kafka 生产与消费
使用 docker 作为 Web 开发服务器
提供一种思路,临时启动一个 nginx 容器作为服务器来开发前端应用,nginx 作为静态页面发布器,并可以代理远端 API。同时,我们也可以在 shell 中操作打开浏览器,并监控文件的改变并刷新浏览器。php,python 等脚本类的 web 开发也可以使用这个方法,只需要更换相应的 server 镜像作为容器运行的基础环境。
谢正伟
2020/06/08
3K0
POWER架构服务器作为计算节点
在power机器上安装计算组件,将power机器作为计算节点,并测试Openstack的基本功能。
后端云
2018/10/25
2K0
Linux 服务器使用git 作为仓库
https://www.cnblogs.com/JayYang/p/16436643.html
全栈测试开发日记
2023/02/02
1.4K0
与(&)、或(|)、异或(^) – 位运算详解
位运算,在平时的使用频率不是很高,大部分人都很少用到,以至于对位运算的理解也是比较模糊。
Yiiven
2022/12/15
1.7K0
与(&)、或(|)、异或(^) – 位运算详解
点击加载更多

相似问题

Rails 3.2.1登录Passenger、Thin或Unicorn

10

为什么此rackup文件适用于Thin,而不适用于WEBrick或Unicorn?

13

Rails在开发模式下为Webrick,在生产模式下为Thin

12

简单的Ruby服务器设置,使用Thin作为简单的rhtml服务器(如Webrick)

18

从WEBrick到Unicorn: Heroku上的Rails

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文