Java怎么使用DFA算法实现敏感词过滤


本篇内容主要讲解“Java怎么使用DFA算法实现敏感词过滤”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java怎么使用DFA算法实现敏感词过滤”吧!敏感词过滤就是你在项目中输入某些字(比如输入xxoo相关的文字时)时要能检测出来,很多项目中都会有一个敏感词管理模块,在敏感词管理模块中你可以加入敏感词,然后根据加入的敏感词去过滤输入内容中的敏感词并进行相应的处理,要么提示,要么高亮显示,要么直接替换成其它的文字或者符号代替。敏感词过滤的做法有很多,其中有比较常用的如下几种:1.查询数据库当中的敏感词,循环每一个敏感词,然后去输入的文本中从头到尾搜索一遍,看是否存在此敏感词,有则做相应的处理,这种方式讲白了就是找到一个处理一个。优点:so easy。用java代码实现基本没什么难度。缺点:这效率是非常低的,如果是英文时你会发现一个很无语的事情,比如英文a是敏感词,那我如果是一篇英文文档,那程序它得处理多少次敏感词?谁能告诉我?2.传说中的DFA算法(有限状态机),也正是我要给大家分享的,毕竟感觉比较通用,算法的原理希望大家能够自己去网上查查资料,这里就不详细说明了。优点:至少比上面那sb效率高点。缺点:对于学过算法的应该不难,对于没学过算法的用起来也不难,就是理解起来有点gg疼,匹配效率也不高,比较耗费内存,敏感词越多,内存占用的就越大。在项目启动前读取数据,将敏感词加载到Map中,具体实现如下:建表语句:实体类SensitiveWord.java:数据库持久类SensitiveWordMapper.java:service类SensitiveWordService.java和Sensiti免费云主机域名veWordServiceImpl.java:敏感词过滤工具类SensitiveWordUtils:项目启动完成后执行初始化敏感关键字StartInit.java:编写测试脚本测试效果.代码如下:执行结果如下:到此,相信大家对“Java怎么使用DFA算法实现敏感词过滤”有了更深的了解,不妨来实际操作一番吧!这里是百云主机网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

相关推荐: golang与pgsql交互如何实现

本文小编为大家详细介绍“golang与pgsql交互如何实现”,内容详细,步骤清晰,细节处理妥当,免费云主机域名希望这篇“golang与pgsql交互如何实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。通过读取配置文件获取pgsq…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 06/02 11:57
Next 06/02 11:57

相关推荐