开源项目
版本特性
大家好,我是老马。
敏感词一开始了内置了多种检验策略,但是很多用户在使用的过程中希望可以自定义策略。
所以 v0.25.0 开始,支持用户对部分策略进行自定义实现。
快速开始
maven 引入
<dependency>
<groupId>com.github.houbb</groupId>
<artifactId>sensitive-word</artifactId>
<version>0.25.0</version>
</dependency>
配置说明
v0.25.0 目前的几个策略,也支持用户引导类自定义。
所有的策略都是接口,支持用户自定义实现,自己在
序号 | 方法 | 说明 | 默认值 |
---|---|---|---|
16 | wordCheckNum | 数字检测策略(v0.25.0开始支持) | WordChecks.num() |
17 | wordCheckEmail | 邮箱检测策略(v0.25.0开始支持) | WordChecks.email() |
18 | wordCheckUrl | URL检测策略(v0.25.0开始支持),内置还是实现了 urlNoPrefix() | (WordChecks.url() |
19 | wordCheckIpv4 | ipv4检测策略(v0.25.0开始支持) | WordChecks.ipv4() |
20 | wordCheckWord | 敏感词检测策略(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 可以指定对应的策略,如果不满足业务可以自己实现。
小结
希望本文对你有所帮助,如果喜欢,欢迎点赞收藏转发一波。
我是老马,期待与你的下次相遇。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。