在网上看到的大部分采用DFA算法,大概思路如下:
1:DFA采用Map的hash机制,将敏感词单个拆分,以第1个字符为key,其他值依旧使用map相连,形成了大map套用小map..
2:遍历需要过滤的字符串,获取每一个字符,根据get(key)来检测是否为敏感词。
我最开始是想到用正则来提取数据中的敏感数据,然后获取敏感字所在索引位置,再利用StringBuilder.replace(start,end,str)来替换,但经过测试发现使用正则有2个问题:
1:因为是正则要整串匹配,所以效率慢,同样3...
分类:
其他好文 时间:
2015-04-16 17:39:07
阅读次数:
272