我有一个字符串构建器,可存储许多单词......例如,我做了
StringBuilder builder = new StringBuilder();
builder.Append(reader.Value);
现在,builder包含字符串
" india is a great great country and it has many states and territories".. it contains many paragraphs.
我希望每个单词都应该是唯一的,并且它的单词数量。例如,
india: 1
great: 2
country: 1
and: 2
此外,此结果应保存在Excel文件中。但我没有得到结果。
我在谷歌搜索过,但我是通过linq或通过写单词本身来获取它。你能帮帮我吗?我是初学者。
答案 0 :(得分:4)
您可以使用Linq
来实现它。尝试这样的事情。
var result = from word in builder.Split(' ')
group word by word into g
select new { Word = g.Key, Count = g.Count() };
您也可以将此结果转换为此对象的
字典对象Dictionary<string, int> output = result.ToDictionary(a => a.Word, a => a.Count);
因此,输出中的每个项目都包含Word
作为键,而Count
作为值。
答案 1 :(得分:1)
嗯,这是获取话语的一种方式:
IEnumerable<string> words = builder.ToString().Split(' ');
答案 2 :(得分:0)
使用String.Split()
函数将字符串分解为单词。然后,您可以使用Dictionary<string, int>
来跟踪唯一字词及其计数。
尽管如此,你并不需要StringBuilder
- 当你将字符串连接在一起时,StringBuilder
很有用。
完成处理输入字符串中的所有单词后,您可以编写代码以将结果导出到Excel。最简单的方法是创建一个以逗号分隔的文本文件 - 搜索该短语并查看使用StreamWriter
来保存输出。 Excel具有CSV文件的内置转换器。