开源项目
敏感词核心 https://github.com/houbb/sensitive-word
敏感词控台 https://github.com/houbb/sensitive-word-admin
版本特性
大家好,我是老马。
敏感词一开始了内置了多种检验策略,但是很多用户在使用的过程中希望可以自定义策略。
所以 v0.25.0 开始,支持用户对部分策略进行自定义实现。
快速开始
maven 引入
- <dependency>
- <groupId>com.github.houbb</groupId>
- sensitive-word</artifactId>
- <version>0.25.0</version>
- </dependency>
复制代码 配置说明
v0.25.0 目前的几个策略,也支持用户引导类自定义。
所有的策略都是接口,支持用户自定义实现,自己在
序号方法说明默认值16wordCheckNum数字检测策略(v0.25.0开始支持)WordChecks.num()17wordCheckEmail邮箱检测策略(v0.25.0开始支持)WordChecks.email()18wordCheckUrlURL检测策略(v0.25.0开始支持),内置还是实现了 urlNoPrefix()(WordChecks.url()19wordCheckIpv4ipv4检测策略(v0.25.0开始支持)WordChecks.ipv4()20wordCheckWord敏感词检测策略(v0.25.0开始支持)WordChecks.word()内置实现:
a) WordChecks.urlNoPrefix() 作为 url 的额外实现,可以不需要 https:// 和 http:// 前缀。
自定义使用的例子
下面是一个简单使用自定义策略的例子- final String text = "点击链接 https://www.baidu.com 查看答案,当然也可以是 baidu.com、www.baidu.com";
- final SensitiveWordBs sensitiveWordBs = SensitiveWordBs.newInstance()
- .enableUrlCheck(true) // 启用URL检测
- .wordCheckUrl(WordChecks.urlNoPrefix()) //指定检测的方式
- .init();
- List<String> wordList = sensitiveWordBs.findAll(text);
- Assert.assertEquals("[www.baidu.com, baidu.com, www.baidu.com]", wordList.toString());
- Assert.assertEquals("点击链接 https://************* 查看答案,当然也可以是 *********、*************", sensitiveWordBs.replace(text));
复制代码 wordCheckUrl 可以指定对应的策略,如果不满足业务可以自己实现。
小结
希望本文对你有所帮助,如果喜欢,欢迎点赞收藏转发一波。
我是老马,期待与你的下次相遇。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |