Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类

Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类

 

===========================

?Copyright 蕃薯耀 2017年9月25日

http://www.cnblogs.com/fanshuyao/

一、问题描述

很多对外网站的某些内容都需要过滤敏感词,避免政治与色@情上的问题。

二、解决方案

使用词库进行匹配过滤成 * (星号)

Java 敏感词工具类及敏感词词库见附件。

1、下载后,有几个类,主要为WordFilter 这个工具类,使用方法如下:

Java代码  

  1. content = WordFilter.doFilter(content);//敏感词过滤

就是这么简单。

2、配置文件共有2个, 在resources文件夹中,

sensitiveWords.txt :敏感词词库

sensitiveWordsSplitCode.txt :敏感词中间的分隔符

为什么会有分隔符,如很多人通过在敏感词之间增加分隔符或其它字符逃避系统敏感词的过滤,如:

色@情(中间不加@,不让我提交) 写成 色@情,可能有些系统就不能过滤了,而sensitiveWordsSplitCode.txt 就起到这样的作用,就算用别的字符分隔,也能识别出来进行过滤。

把这2个配置文件放在src/main/resources下,这个是Maven项目的,JavaWeb项目放在src下。

最后,到处结束了

下载附件走起吧。

附件下载地址:http://fanshuyao.iteye.com/blog/2394157

===========================

?Copyright 蕃薯耀 2017年9月25日

http://www.cnblogs.com/fanshuyao/

时间: 2024-12-13 15:39:52

Java 敏感词过滤,Java 敏感词替换,Java 敏感词工具类的相关文章

java 非法字符过滤 , 半角/全角替换

java 非法字符过滤 , 半角/全角替换 package mjorcen.netty.test1; import java.io.UnsupportedEncodingException; public class CharByteConverter { /** * 全角转半角 * * @param str * @return * * @author mjorcen * @email [email protected] * @dateTime Sep 27, 2014 2:51:50 PM *

敏感词过滤,并实现替换

由于app中有论坛 模块,用户发帖,为了禁止用户发不文明的帖子,所以对文字进行过滤,我的方法是: 1 .新建一张敏感词表.导入敏感词,数据不多,大概500 左右. 2.代码比较.查询出所有的敏感词,和输入的文字比较(由于我们 的用户量不多.几千,所以这个方案可行.不会太影响速度.) 粘贴代码: 这样就会把那些讨厌的敏感词过滤掉了.当然现在网站对敏感词过滤大概三种 处理: 1.输入一段文字,后台或者前台校验.有敏感词,提示有非法文字.关键是有些直接啥 都不提示,打了两千字.说有敏感词,怎么找也找不

Java基础——集合(三)——泛型、增强for、工具类

         接上篇,<Java基础--集合(二)--迭代器.Map集合> 六.泛型 (1)定义: 泛型是一种把明确类型的工作放在了创建对象或者调用方法时候才去明确的特殊的类型. (2)格式: <数据类型> ArrayList<String> aList=new ArrayList<String>(); <String> 即表示的是泛型 (3)好处:(掌握) A:解决了黄色警告线问题 B:把运行期间的转换异常给提前到了编译期间 C:优化了程序

Java基础知识强化之集合框架笔记33:Arrays工具类中asList()方法的使用

1. Arrays工具类中asList()方法的使用 1 public static <T> List<T> asList(T... a): 把数组转成集合 注意事项: 虽然可以把数组转成集合,但是集合的长度不能改变. 2. 代码示例: (1) 1 package cn.itcast_03; 2 3 import java.util.Arrays; 4 import java.util.List; 5 6 /* 7 * public static <T> List<

Java知识系统回顾整理01基础06数组07数组工具类Arrays

一.Arrays简介 Arrays是针对数组的工具类,可以进行 排序,查找,复制填充等功能. 大大提高了开发人员的工作效率. ? ? 二.Arrays提供的数组复制方法 与使用System.arraycopy进行数组复制类似的, Arrays提供了一个copyOfRange方法进行数组复制. 不同的是System.arraycopy,需要事先准备好目标数组,并分配长度. copyOfRange 只需要源数组就就可以了,通过返回值,就能够得到目标数组了. 除此之外,需要注意的是 copyOfRan

一个java创建,删除,构建Jenkins等功能的JenkinsUtil工具类

package com.vip.webpagetest.utils; import java.io.InputStream; import java.io.UnsupportedEncodingException; import java.util.List; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.UsernamePasswordCredentials; impo

java反射的补充:桥接方法以及Spring中一些工具类

在上一篇博文中:http://www.cnblogs.com/guangshan/p/4660564.html 源码中有些地方用到了 this.bridgedMethod = BridgeMethodResolver.findBridgedMethod(method); 那么bridgedMethod是什么呢? 经查找发现,这个叫做桥接方法:http://freish.iteye.com/blog/1158008 java编译器采用bridge方法来兼容本该使用泛型的地方使用了非泛型的用法的问题

java根据身份证号和获取用户年龄和性别的工具类

import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * 身份证信息算法类 * * @author javaweb * */ public class CardUtil { /** * 根据身份证的号码算出当前身份证持有者的性别和年龄 18位身份证 * * @return * @throws Exception */ public

【java】划分 List为几个LIst的几种工具类 1.按照目标份数划分 2.按照目标容量划分

如题,示例代码如下: /** * 1> 按照份数---划分list * @param source * @param num 想要划分成多少份 * @return */ public static <T> List<List<T>> splitListForNum(List<T> source,int num){ List<List<T>> result=new ArrayList<List<T>>();

java web过滤器实际应用(解决中文乱码 html标签转义功能 敏感字符过滤功能)

转载地址:http://www.cnblogs.com/xdp-gacl/p/3952405.html 在filter中可以得到代表用户请求和响应的request.response对象,因此在编程中可以使用Decorator(装饰器)模式对request.response对象进行包装,再把包装对象传给目标资源,从而实现一些特殊需求. 一.Decorator设计模式 1.1.Decorator设计模式介绍 当某个对象的方法不适应业务需求时,通常有2种方式可以对方法进行增强: 编写子类,覆盖需增强的