基于C#实现的敏感字检测示例
作者:大巨头
这篇文章主要介绍了基于C#实现的敏感字检测示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这是今天提到的一个需求,于是做了一个小demo。把过程记录下来。
第一步 新建项目
比如 demo1 这里是用网站形式
第二步下载敏感词类库ToolGood.Words.dll
方案一 可以先去网络搜索,查找开源的代码库,然后把代码下载下来,自己编译。
方案二 用nuget下载
第三步创建测试方法
[HttpPost] public ActionResult GetTestMinGan(ProductInfo model) { // 创建敏感词过滤器对象 var filter = new WordsSearch(); // 添加敏感词 List<string> words = new List<string>() { "磁性", "带电", "液体", "膏状", "粉末", "颗粒", "食品", "仿牌", "电子", "气体", "动物", "植物", "鲜活类物品", "酒精类", "枪械形状物品", "货币", "金融票据", "腐蚀品", "药品类", "毒品", "烟草", "危险物品", "易燃易爆" }; filter.SetKeywords(words); // 检测文本是否包含敏感词 string text = model.ProductName; bool containsSensitiveWords = filter.ContainsAny(text); // 输出结果 if (containsSensitiveWords) { return Content("文本中包含敏感词"); } else { return Content("文本中不包含敏感词"); } }
实体类 ProductInfo
public class ProductInfo { public string ProductName{get;set;} }
第四步测试
其他
这是gpt平台回答的 ToolGood.Words 是一个C#的敏感词过滤库,可以用于快速判断一段文本中是否包含敏感词。以下是引入和使用 ToolGood.Words 的示例代码:
using System; using System.Collections.Generic; using System.Linq; using ToolGood.Words; class Program { static void Main() { // 创建敏感词过滤器对象 var filter = new WordsSearch(); // 添加敏感词 List<string> words = new List<string>() { "敏感词1", "敏感词2", "敏感词3" }; filter.SetKeywords(words); // 检测文本是否包含敏感词 string text = "这是一段包含敏感词1和敏感词2的文本"; bool containsSensitiveWords = filter.ContainsAny(text); // 输出结果 if (containsSensitiveWords) { Console.WriteLine("文本中包含敏感词"); } else { Console.WriteLine("文本中不包含敏感词"); } } }
以上代码中,我们首先创建了一个 WordsSearch
对象,这个对象代表一个敏感词过滤器。然后,我们使用 SetKeywords()
方法给敏感词过滤器添加敏感词。
接着,我们定义了一段文本 text
。使用 ContainsAny()
方法检测这段文本中是否包含任意一个敏感词。如果包含敏感词,则输出 "文本中包含敏感词",否则输出 "文本中不包含敏感词"。
当然,还有许多其它方法可以实现自定义敏感词库、检测详细的敏感词信息等功能。你可以根据具体需求查看 ToolGood.Words 的文档来使用它提供的功能。
总结
这个库使用起来是非常简单的。关于敏感词存放位置。这个根据需求来,既可以是文件,也可以是数据库,当然也可以写死在代码里。根据自己的需求来。
到此这篇关于基于C#实现的敏感字检测示例的文章就介绍到这了,更多相关C#敏感字检测内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!