117.info
人生若只如初见

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

在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边界匹配符,以确保只匹配完整的单词,而不是部分匹配。例如,它将匹配"色情",但不会匹配"色情片"。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe271AzsNAgFUAw.html

推荐文章

  • c# linux开发能进行数据库操作吗

    是的,C# 可以在 Linux 上进行数据库操作。虽然 Windows 上的 .NET Core 和 .NET 5/6/7 等版本提供了对数据库操作的支持,但是在 Linux 上,你需要使用 .NET 的跨...

  • c# linux开发怎样实现网络通信

    在C#中进行Linux开发并实现网络通信,你可以使用.NET Core或.NET 5/6/7等跨平台框架。以下是一个简单的示例,展示了如何使用C#和.NET Core在Linux上实现TCP网络通...

  • c# linux开发如何处理文件系统

    在C#中进行Linux文件系统操作时,可以使用.NET Core的System.IO命名空间中的类和方法。以下是一些常用的文件系统操作示例: 创建目录: using System.IO; string...

  • c# linux开发能进行多线程吗

    是的,C# 在 Linux 开发中可以进行多线程
    要在 Linux 上使用 C# 进行多线程开发,你可以使用 .NET Core 或 .NET 5(或更高版本),它们都支持跨平台开发,包...

  • c#正则表达式怎样匹配日期格式

    在C#中,你可以使用Regex类来匹配日期格式。为了匹配常见的日期格式(如MM/dd/yyyy、yyyy-MM-dd等),你可以使用以下正则表达式:
    using System;
    usin...

  • c#正则表达式能提取网页链接吗

    是的,C#中的正则表达式可以用来提取网页链接。可以使用System.Text.RegularExpressions命名空间中的Regex类来编写和运行正则表达式。
    以下是一个示例代码片...

  • c#正则表达式怎样匹配邮箱

    在C#中,你可以使用Regex类来匹配邮箱地址。一个简单的匹配邮箱的正则表达式是:^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$。这个正则表达式会匹配大多数...

  • const和readonly在内存分配上有何不同

    const 和 readonly 都可以用来声明常量,但它们在内存分配和使用上有一些不同之处。
    const 关键字可以用于修饰变量,表示该变量的值在初始化后不能被修改。...