我想知道是否有一种方法可以判断给定的文本是人类可读的。我所说的人类可读性是指:它具有某些含义,格式类似于某人撰写的文章,或者至少由旨在供人类阅读的软件翻译器生成。
这是背景故事:最近我正在制作一个允许用户将短文本上传到数据库的应用程序。在部署的早期阶段,我注意到由于编码问题,一些用户总是上传损坏的文本。这个问题稍后得到解决,但让我想知道是否有一种方法可以在将文本返回给用户之前提取非人类可读的文本。
任何建议将不胜感激。范围可能太大而无法包含其他语言,因此目前我们只讨论英语。
最佳答案
您可以尝试使用语言识别工具或类似工具。
基本上,您必须计算字符或字符组(字符 n-gram),并将提交的文本的字母分布与用良好英语编写的文本集合的字母分布进行比较。 (确保此类文本集合代表预期输入)。
在 N-gram 方法的连续性中,您可能想尝试基于字典的方法并检查中是否存在“停用词”(例如“the”、“a”、“an”、“of”)输入文本。
关于android - 如何检测文本是否可读?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24007912/