📜  单词计数器 c# (1)

📅  最后修改于: 2023-12-03 15:22:49.576000             🧑  作者: Mango

单词计数器 C#

单词计数器是一个常见的工具,用于统计一段文本中单词的数量。这个工具可以用于各种场景,例如统计文章的长度,或者分析一份代码文件的关键字使用情况。

在 C# 中编写单词计数器并不困难,我们可以使用正则表达式来匹配单词,并使用字典来存储单词的出现次数。

步骤

下面是编写单词计数器的步骤:

  1. 读取输入的文本。
  2. 将文本分解成单词。
  3. 对于每个单词,检查它是否已经出现过。如果出现过,增加计数器;否则,将其添加到字典中。
  4. 输出每个单词以及它的出现次数。

这个过程可以用下面的 C# 代码来实现:

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;

class Program
{
    static void Main()
    {
        // 读取输入的文本
        string input = Console.ReadLine();

        // 定义单词计数器
        var counter = new Dictionary<string, int>();

        // 分解文本成单词
        var regex = new Regex(@"\b\w+\b");
        foreach (Match match in regex.Matches(input))
        {
            // 增加计数器或添加到字典
            var word = match.Value.ToLowerInvariant();
            if (!counter.ContainsKey(word))
                counter.Add(word, 0);
            counter[word]++;
        }

        // 输出每个单词的计数器
        foreach (var pair in counter)
            Console.WriteLine("{0}: {1}", pair.Key, pair.Value);
    }
}

这个代码使用了 Regex 类来匹配单词。它使用 \b 匹配单词的边界,然后使用 \w+ 匹配至少一个连续的字母数字字符。在处理单词时,我们将其转换成小写字母,以避免大小写混淆。

我们使用 Dictionary<string, int> 来存储每个单词的出现次数。在处理每个单词时,我们检查它是否已经出现过,如果出现过我们增加它的计数器,否则我们将它添加到字典中,并把计数器初始化为 1。

最后,我们输出每个单词以及它的出现次数。