Levenshtein距离算法也适用于非英语语言字符串吗?
更新:在比较亚洲字符时,这会在 Java 等语言中自动工作吗?
Levenshtein距离算法也适用于非英语语言字符串吗?
更新:在比较亚洲字符时,这会在 Java 等语言中自动工作吗?
仅当语言是基于字母的。例如俄语,德语,......但象形文字(例如中国)或音节(如老挝) - 不是。
是的。但是您必须将非英语字符视为“1 个字符”,而不是多个字符(例如使用 utf-8)。例如,在 python 中,您将使用 unicode 类来表示字符串(和字符)。
Levenshtein 不关心语言,它只是告诉您需要更改(添加、删除、交换)多少个字符才能从一个字符串到另一个字符串。
所以:是的,但是您必须检查您的字符集,否则一些外国“单个”字符将被视为两个(或更多)字符。