如何在PostgreSQL的文本列中检测英语以外的其他语言(非拉丁语)?



我有一个包含两列的表:一列是id,另一列是文本列。我只想保留文本值为英文的行。

我所说的语言是使用非拉丁字母的语言,如阿拉伯语、中文和西里尔字母。 这个问题在 2012 年左右被问到,我想知道是否有一些新的解决方案,而不是用另一种编程语言来处理它!

这不是一个容易的问题。有几个用于语言检测的库(例如 langdetect(,但它们在数据库中不起作用,因此您必须通过选择它们来处理所有记录,以另一种语言处理它们,然后在它们未通过测试时删除。此外,准确性不是很好,并且随着文本变短而降低;如果你的文本只有几个单词,准确性就非常糟糕了。

最新更新