敏感词过滤技术文档

敏感词过滤技术文档

ID:1307106

大小:141.00 KB

页数:9页

时间:2017-11-10

敏感词过滤技术文档_第1页
敏感词过滤技术文档_第2页
敏感词过滤技术文档_第3页
敏感词过滤技术文档_第4页
敏感词过滤技术文档_第5页
资源描述:

《敏感词过滤技术文档》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、敏感词过滤技术文档目录1.背景32.算法描述33.效率的瓶颈54.使用详解64.1publicstaticIList[]GetKeyWordArray(IListKeyWordList,boolIsIgnoreCase)64.2publicstaticIList[]GetKeyWordArray(string[]KeyWordList,boolIsIgnoreCase)64.3publicstringFilterSingleThread(stringContent,IList[]SensitiveArray,charRepl

2、aceChar,boolIsIgnoreCase)64.4publicstringFilterSingleThread(stringContent,IList[]SensitiveArray)74.5publicstringFilterMuliThread(stringContent,IList[]SensitiveArray,intThreadCount,charReplaceChar,boolIsIgnoreCase)74.6publicstringFilterMuliThread(stringContent,IList[]Sensit

3、iveArray,intThreadCount)74.7publicstringReplace(stringContent,IList[]KeyWordArray,stringLeftStr,stringRightStr,boolIsIgnoreCase)84.8publicstringReplace(stringContent,IList[]KeyWordArray,stringLeftStr,stringRightStr)85.一些细节86.其他91.背景在天朝,很多东西都要被过滤。鉴于各大网站论坛博客等都有敏感词过滤,**网站的社区部分当然也要作相应

4、处理。2.算法描述首先要根据关键词表的首字符建立索引(将char转成int型)。IList[]arr=newList[65535];因为Unicode码最大是65535个,所以建立一个65535大小的数组,相同首字符的关键词放入string的泛型集合中。注意:关键词表最好是预先根据长度降序排好序的。比如,“法O功”和“法O功组织”都是关键字,需要过滤的文本内容为“今天法O功组织集合”,如果前者比后者先执行过滤的话,过滤后就变成“今天***组织集合”,但理想情况是“今天*****集合”,所以要把长的关键词放前面。接着逐个读取目标字符串的字符,转成int型后判

5、断索引数组中是否有值,为空则将该字符添加到结果集中(一个StringBuilder);不为空则循环该首字符开头的关键词,逐个字符比较,有匹配的则以等长的特殊字符代替(默认是*号)。模拟步骤如下:关键词表为:“法O功组织”,“法O功”,“李洪志”字符“法”转成int为27861字符“李”转成int为26446因此索引数组的下标27861的值为长度2的泛型集合,下标26446的值为长度1的泛型集合,其余都为空。目标字符串为“今天法O功组织集合,李洪志发表李洪”1逐个字符读取,“今”和“天”相应的索引数组的值为空,将它们放入结果集中。(红色字符表示当前下标读取的字符)目标:今天法O功组织集合,

6、李洪志发表李洪结果:今天2“法“对应的索引数组值不为空,则循环该泛型集合,逐个字符比对目标:今天法O功组织集合,李洪志发表李洪泛型集合:法O功组织完全匹配,则结果集中放入5个*号。结果:今天*****3“集”“合”“,”对应的索引数组值都为空,将它们放入结果集中。目标:今天法O功组织集合,李洪志发表李洪结果:今天*****集合,4“李“对应的索引数组值不为空,则循环该泛型集合,逐个字符比对目标:今天法O功组织集合,李洪志发表李洪泛型集合:李洪志完全匹配,则结果集中放入3个*号。结果:今天*****集合,***5“发”“表”对应的索引数组值都为空,将它们放入结果集中。目标:今天法O功组织集

7、合,李洪志发表李洪结果:今天*****集合,***发表6“李“对应的索引数组值不为空,则循环该泛型集合,逐个字符比对目标:今天法O功组织集合,李洪志发表李洪泛型集合:李洪志不匹配,将“李“放入结果集中。结果:今天*****集合,***发表李7“洪”对应的索引数组值都为空,将它放入结果集中。目标:今天法O功组织集合,李洪志发表李洪(读到末尾)结果:今天*****集合,***发表李洪最后过滤结果就是:“今天*****集合,***发表李洪

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。