说说敏感词

当代人除了自我剥削外,还十分擅长自我阉割,其中尤以中国人为甚。有些东西和规则是客观存在的,明明都看得见,然后笑而不语,都用 「the」或者 「它」来指代。戳破这一点的人,常常会陷入孤立处境,并被带上清高或者孤傲的高帽。最近北京下雪了,高帽上积了不少雪,自是京城一景,也难得可以看见不少人相互脱帽致敬,十分快乐。

不妨来做做考究党?何时人类才有了「敏感词」这一说呢?在文字和阅读尚未普及之前,人类社会鲜有童年的概念,在活字印刷的推动下,文字得以大规模传播,成年与童年的概念开始变得界限分明。许多词语对于孩子就是敏感的,由此演化出「儿童读物」这一细分领域,尽力创造出一个美好、纯洁和繁荣的世界。淫秽的词语不应出现,暴力的词语的不应出现,反人类的词语不应出现。

在印刷术发明之前,一切人际交流都发生在一定的社会环境下。甚至连阅读所采用的也是口语模式,一个读者大声朗读,其他人随后跟上。但自从有了印刷的书籍之后,另一种传统便开始了:孤立的读者和他自己的眼睛。口腔无须再发声音,读者及其反应跟社会环境脱离开来,读者退回到自己的心灵世界。从16世纪至今,大多数读者对别人只有一个要求:希望他们不在旁边;若不行,则请他们保持安静。整个阅读的过程,作者和读者仿佛达成共谋,对抗社会参与和社会意识。简而言之,阅读成为反社会的行为。

既然如此,敏感词便越过色情和暴力的边界,开始侵蚀思想的多样性,为学说和政见站台。

历史古籍和壁画碑刻中那些被扣去的部分,应用程序和 Web 界面中那些「 xxoo 」的部分,文本输入框中无法被发送出去的部分,都在暗示人类长久以来实施的一种 xx 制度。(快看,笔者在自我阉割!🌚)

如果你感兴趣他们都是些什么词语,文末「阅读原文」可直达小窥一眼。👨🏻‍💻

https://github.com/observerss/textfilter/blob/master/keywords

讲讲最简单的敏感词过滤方案。对要进行检测的文本,遍历所有敏感词,逐个检测输入的文本中是否含有指定的敏感词。这种方式是最简单的敏感词过滤方案了,实现起来不难,示例代码如下:

@Test
    public void test1()
{

        Set sensitiveWords=new HashSet();
        sensitiveWords.add("shit");
        sensitiveWords.add("蠢蛋");
        sensitiveWords.add("笨蛋");
        String text="你是蠢蛋啊";
        for(String sensitiveWord:sensitiveWords){
            if(text.contains(sensitiveWord)){
                System.out.println("输入的文本存在敏感词。——"+sensitiveWord);
                break;
            }
        }
    }

代码十分简单,但是这个方案有一个很大的问题是,随着敏感词数量的增多,敏感词检测的时间会呈线性增长。

破解起来也蛮简单,空格、*、#、@等字符混用,或中英混用,但显而易见,它提高了沟通的成本,妨碍了信息自由。

此法,古今中外,屡试不爽。

👇 历史文章 👇

我们这一代人注定离群索居 |世界一定会越来越好| 什么信息源值得看?国内外资讯、文章类推荐 |我的大脑去哪里了?|快跑,不然会疯!|爱情问题

原文发表于微信公众号EBOOKSPLAN

发表评论

电子邮件地址不会被公开。 必填项已用*标注