思想:
1.创建文件夹,填写需要过滤的词汇;
2.采用流的方式进行文件夹内容的读取;
3.将流信息以line为单位加入set集合(此处使用set集合的目的为去重);
4.将添加到set集合的敏感词库加入hashMap中(此处采用DFA算法,把每个词作为类似一棵树的形式存储):
eg.读取敏感词库,将敏感词放入HashSet中,构建一个DFA算法模型:
中 = { isEnd = 0
国 = {isEnd = 1
人 = {isEnd = 0
民 = {isEnd = 1}
}
男 = { isEnd = 0
人 = {isEnd = 1 }
}
}
}
五 = {
isEnd = 0
星 = {
isEnd = 0
红 = {
isEnd = 0
旗 = {
isEnd = 1
}
}
}
}
5.将目标字符串与敏感词库比较
遍历目标字符串中的每个字符为开头,在敏感库中能否找到。