首先需要在src目录下配置需要过滤字符的属性文件:words.properties
package com.zou.regex;
/*
* 过滤敏感字
*/
import java.io.IOException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Enumeration;
import java.util.Properties;
import java.util.regex.Pattern;
import java.util.regex.Matcher;
public class Test2
{
private static Pattern pattern = null;
// 从words.properties初始化正则表达式字符串
private static void initPattern()
{
StringBuffer patternBuf = new StringBuffer("");
try
{
InputStream in = Test2.class.getClassLoader().getResourceAsStream("words.properties");
Properties pro = new Properties();
pro.load(in);
Enumeration enu = pro.propertyNames();
patternBuf.append("(");
while(enu.hasMoreElements())
{
patternBuf.append((String)enu.nextElement()+"|");
}
patternBuf.deleteCharAt(patternBuf.length()-1);
patternBuf.append(")");
System.out.println(patternBuf.toString());
//unix换成UTF-8
//pattern = Pattern.compile(new String(patternBuf.toString().getBytes("ISO-8859-1"), "UTF-8"));
//win下换成gb2312
pattern = Pattern.compile(patternBuf.toString());
}
catch(IOException ioEx)
{
ioEx.printStackTrace();
}
}
private static String doFilter(String str)
{
Matcher m = pattern.matcher(str);
str = m.replaceAll("**");
return str;
}
public static void main(String[] args)
{
String str = "敏感字敏感字敏感字fd走少fd敏感字敏感字gdf走gfg少";
System.out.println("str:"+str);
initPattern();
Date d1 = new Date();
SimpleDateFormat formatter = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss:SSS Z");
System.out.println("start:"+formatter.format(d1));
System.out.println("共"+str.length()+"个字符,查到" + Test2.doFilter(str));
Date d2 = new Date();
System.out.println("end:"+formatter.format(d2));
}
}
分享到:
相关推荐
一个web过滤敏感字内容详解,方法和使用。非常不错。
asp.net 过滤敏感关键字,带有一个过滤关键字列表,.net 3.0上可用。
实现过滤敏感字,敏感词的过滤和转换
现在几乎所有的网站再发布带有文字信息的内容时都会要求过滤掉发动的、不健康的、影响社会安定的等敏感词汇,这里为大家提供了可以是现在这种功能的解决工具类:敏感字收录文件+敏感字工具使用
C#敏感字过滤源码,里面有两个敏感词过滤字典,源码是winform程序的,下载了就可以进行测试,也可以自己在敏感字字典内加入自己需要过滤的内容。
javaWeb实现的过滤器敏感字过滤,建一个敏感字符的文件,发送时实现过滤为***
该文件为.java文件,可以配合前面上传的敏感字收录文件进行使用的敏感字过滤工具;包括替换以及自定义过滤格式等
springBoot-java敏感词语过滤类
String过滤敏感字
NULL 博文链接:https://takeme.iteye.com/blog/1651479
2. 实验内容:实现一个过滤无用词汇程序。规则如下: 1. 能接受的字符是:字母数字 标点符号, . " 还有无用的符号@#¥ 2. 对于敏感信息的词语是不分大小写的。 3. 要注意滤去可能在敏感词汇的中间出现的一些空格...
主要介绍了Java使用DFA算法实现过滤多家公司自定义敏感字功能,结合实例形式分析了DFA算法的实现原理及过滤敏感字的相关操作技巧,需要的朋友可以参考下
●字符替换(过滤敏感字)管理功能。可以对文章内容中出现的非法文字按站长事先指定的规则进行替换或过滤。 ●支持文章评论功能,通过WEB后台进行评论管理、管理员回复等功能。 产品模块功能简介 ●产品...
一行代码解决UITextFiled和UITextView限制字数和输入特殊字符
清理脏话敏感字的Node模块
●字符替换(过滤敏感字)管理功能。可以对文章内容中出现的非法文字按站长事先指定的规则进行替换或过滤。 ●支持文章评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 下载模块功能简介 ●支持...
golang 敏感词过滤
●字符替换(过滤敏感字)管理功能。可以对文章内容中出现的非法文字按站长事先指定的规则进行替换或过滤。 ●支持文章评论功能,通过动易WEB后台进行评论管理、管理员回复等功能。 下载模块功能简介 ●...
很高效啊 三十万个关键字过滤 一秒钟搞定