我有一个文本文件存储为字符串变量。该文本文件被处理,以便它只包含小写字和空格。现在,假设我有一个静态词典,它只是一个特定单词列表,我想从文本文件中计算词典中每个单词的频率。例如:计算文本文件中特定字的频率
Text file:
i love love vb development although i m a total newbie
Dictionary:
love, development, fire, stone
我想看到的输出如下所示,列出字典单词和它的计数。如果它使编码更简单,它也只能列出出现在文本中的字典单词。
===========
WORD, COUNT
love, 2
development, 1
fire, 0
stone, 0
============
使用正则表达式(例如,“\ w +”),我可以得到所有的字比赛,但我不知道怎么去说也都在字典中的计数,所以我坚持。效率至关重要,因为字典非常大(约100,000字),文本文件也不小(每个约200kb)。
我很感激任何帮助。
Dictionary<string, int> count =
theString.Split(' ')
.GroupBy(s => s)
.ToDictionary(g => g.Key, g => g.Count());
现在你可以检查是否存在于字典的话,并表示如果计数:
也许像将字符串拆分成一个`Array`或`List`,然后迭代/处理列表? – 2010-12-23 17:08:52
您已将此标签标记为c#和vb.net。这是什么? – 2010-12-23 17:10:07