java 关键字过滤

原创 2012年05月24日 17:20:06

以下实现对关键字的过滤:


两个个文件words.properties和KeyFilter.java;
1、words.properties配置关键字的配置文件;内容如下:
name1
name2
name3

2、KeyFilter.java:
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 KeyFilter

{

private static Pattern pattern = null;

    // 从words.properties初始化正则表达式字符串
    private static void initPattern() {
        StringBuffer patternBuffer = new StringBuffer();
        try {
            InputStream in = KeyFilter.class.getClassLoader().getResourceAsStream("words.properties");
            Properties property = new Properties();
            property.load(in);
            Enumeration enu = property.propertyNames();
            patternBuffer.append("(");
            while (enu.hasMoreElements()) {
                String scontent = (String) enu.nextElement();
                patternBuffer.append(scontent + "|");
                System.out.println(scontent);
            }
            patternBuffer.deleteCharAt(patternBuffer.length() - 1);
            patternBuffer.append(")");

            // 装换编码
            pattern = Pattern.compile(patternBuffer.toString());
        } catch (IOException ioEx) {
            ioEx.printStackTrace();
        }
    }

    private static String doFilter(String str) {
        initPattern();
        Matcher m = pattern.matcher(str);

// 选择替换方式,这里以* 号代替
        str = m.replaceAll("*");
        return str;
    }
    
    public static void main(String[] args) {
        String str = "我日,艹,fuck,你妹的 干啥呢";
        System.out.println(doFilter(str));
    }

}

Java实现敏感词过滤

敏感词、文字过滤是一个网站必不可少的功能,如何设计一个好的、高效的过滤算法是非常有必要的。前段时间我一个朋友(马上毕业,接触编程不久)要我帮他看一个文字过滤的东西,它说检索效率非常慢。我把它程序拿过来...
  • chenssy
  • chenssy
  • 2014年05月25日 15:42
  • 87516

高效Java敏感词、关键词过滤工具包_过滤非法词句

使用说明:1、本工具包由北京师范大学计算机系 张人杰 开发制作 基于多叉树的查找,任何问题请联系:alex.zhangrj@hotmail.com2、工具包自带敏感词词库,第一次调用时读入词库,故第一...
  • ranjio_z
  • ranjio_z
  • 2011年04月03日 12:18
  • 16974

高效关键字过滤java源码

  • 2011年08月12日 13:27
  • 4KB
  • 下载

Java敏感词过滤、java关键词过滤工具包原理

摘要:基于多叉树查找的Java敏感词过滤、java关键词过滤工具包原理 本算法对纯文本匹配执行效率:5000字35毫秒...
  • ranjio_z
  • ranjio_z
  • 2011年05月08日 11:22
  • 5151

过滤关键字[JAVA版]

【KeywordFilter.java】 import java.io.InputStream; import java.util.Enumeration; import java.util.Pro...
  • xia9527
  • xia9527
  • 2013年01月30日 09:18
  • 404

关键词过滤(脏字过滤)Trie Tree(Hash)和FastCheck两种过滤方式java版本

在做关键词过滤的时候,搜索到yeerh
  • workwithwebis3w
  • workwithwebis3w
  • 2014年07月30日 10:51
  • 4487

Java 实现文章汉字关键词(违禁词)识别2.0

说明:2.0相对1.0的算法改进 首先1.0是用父子节点树来保存树的,一个父对应多个子节点,这就不可避免要使用List来保存子节点,由于List的大小有限制,在1.0的时候加载的数据小于10万条,...
  • xianhujianke
  • xianhujianke
  • 2016年03月29日 16:54
  • 1225

Java敏感词过滤、java关键词过滤工具包_过滤非法词句

  • 2011年04月02日 11:28
  • 23KB
  • 下载

关键字过滤高效算法

import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Lis...
  • qq359605040
  • qq359605040
  • 2015年05月24日 17:59
  • 444

Java权限框架过滤器汇总介绍

1.HttpSessionContextIntegrationFilter   位于过滤器顶端,第一个起作用的过滤器。   用途一,在执行其他过滤器之前,率先判断用户的session中是否...
  • sxe18652071425
  • sxe18652071425
  • 2013年05月29日 21:52
  • 563
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java 关键字过滤
举报原因:
原因补充:

(最多只允许输入30个字)