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