博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
游戏中敏感信息过滤
阅读量:5134 次
发布时间:2019-06-13

本文共 2129 字,大约阅读时间需要 7 分钟。

呵呵 老长时间没做总结了,今天有时间再写第二篇笔记

在游戏中的聊天室当然也可以是其他应用中的涉及到聊天敏感信息,如:政治性的某某的名字或人们给其封的代号、色情词语、脏话、游戏中敏感的信息等等,这些信息都需要过滤,过滤有很多算法,今天就先说下曾经用的一种较为简单的实例

package com.util.filter;import java.util.ArrayList;import java.util.List;/** * @author ZhangYude * @date   2012-10-12 * @version 1.4 * @since 2012 * @desc: * 过滤关键词(可以来自文本或数据库) */public class FilterContextKey {    public static final String REPLACE_CONTEXT= "*";        /**     * 要过滤的关键词     */    public String key;    public FilterContextKey(String key) {        super();        this.key = key;    }        public static List
loadFilterKeys(){ List
list = new ArrayList
(); list.add(new FilterContextKey("TMD")); list.add(new FilterContextKey("T M D")); list.add(new FilterContextKey("他妈的")); list.add(new FilterContextKey("他 妈 的")); list.add(new FilterContextKey("操")); list.add(new FilterContextKey("草")); list.add(new FilterContextKey("日")); list.add(new FilterContextKey("sb")); list.add(new FilterContextKey("s b")); return list; }}---------------------------------------------------------------------------------------------package com.util.filter;import java.util.HashMap;import java.util.List;/** * @author ZhangYude * @date 2012-10-12 * @version 1.4 * @since 2012 * @desc: * 内容过滤器 */public class FilterContextUtil { /** * 过滤的关键词列表 */ private static HashMap
filterKeys; /** * 关键词的最大长度 */ private static int keyMaxLength; /** * 初始化信息 */ private static void initInfo(){ List
filterKeysList = FilterContextKey.loadFilterKeys(); int keyLength = 0; if(filterKeysList.size()>0){ filterKeys = new HashMap
(); keyMaxLength = 0; for(FilterContextKey key:filterKeysList){ keyLength = key.key.length(); //把要过滤的敏感词用“*”代替,放入到Map中,方便匹配 filterKeys.put(key.key.toLowerCase(), getReplaceKey(keyLength)); //找到过滤敏感词的最大长度 if(keyMaxLength

此demo适合于轻量级的过滤,如果数据量大的可能不适

转载于:https://www.cnblogs.com/zyd915/p/3213791.html

你可能感兴趣的文章
八 Civil3d常用显示样式的编辑与创建 ----点标签样式2
查看>>
九校联考-DL24凉心模拟Day2T1 锻造(forging)
查看>>
生产阶段Webpack打包【基础打包】
查看>>
Cortex M3/M4 学习摘要(二)
查看>>
C#时间的味道——任时光匆匆我只在乎你
查看>>
虚拟路径
查看>>
js键盘相关知识总结
查看>>
Python中数据类型转换
查看>>
structed streaming基础---跳过的坑
查看>>
hadoop05---进程线程
查看>>
HTTPS实战之单向验证和双向验证
查看>>
遍历List集合的三种方法
查看>>
分治算法-快速排序
查看>>
Bootstrap框架(基础篇)之列表,表格,表单
查看>>
grep, sed 和 awk 学习总结
查看>>
Django引入静态文件
查看>>
中期蒙混过关,后期要早点起步4.13-4.19
查看>>
redisson笔记
查看>>
c语言运算优先级与结合方向的问题
查看>>
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "FileSize"
查看>>