c#

c#正则表达式如何过滤敏感词

小樊
81
2024-10-12 16:57:17
栏目: 编程语言

在C#中,你可以使用正则表达式来过滤敏感词。以下是一个简单的示例,展示了如何使用正则表达式替换敏感词:

using System;
using System.Text.RegularExpressions;

class Program
{
    static void Main()
    {
        string input = "这是一个包含敏感词的句子,例如:色情、暴力、非法。";
        string[] sensitiveWords = { "色情", "暴力", "非法" };

        string result = FilterSensitiveWords(input, sensitiveWords);
        Console.WriteLine(result);
    }

    static string FilterSensitiveWords(string input, string[] sensitiveWords)
    {
        foreach (var word in sensitiveWords)
        {
            string pattern = $@"\b{word}\b";
            input = Regex.Replace(input, pattern, "***");
        }

        return input;
    }
}

在这个示例中,我们定义了一个FilterSensitiveWords方法,它接受一个输入字符串和一个敏感词数组。然后,我们遍历敏感词数组,为每个敏感词创建一个正则表达式模式,并使用Regex.Replace方法将输入字符串中的敏感词替换为***

注意,这个示例中的正则表达式模式使用了\b边界匹配符,以确保只匹配完整的单词,而不是部分匹配。例如,它将匹配"色情",但不会匹配"色情片"。

0
看了该问题的人还看了