Levenshtein在非英语字符串上的距离

时间:2010-02-17 11:00:08

标签: java levenshtein-distance fuzzy-search

Levenshtein distance算法是否也适用于非英语语言字符串?

更新:在比较亚洲字符时,这是否会像Java这样的语言自动生效?

3 个答案:

答案 0 :(得分:3)

仅当语言是基于字母的时候。例如俄语,德语,......但是象形文字(例如中国)或音节(比如老挝) - 不是。

答案 1 :(得分:2)

是。但是你必须将非英语字符视为“1个字符”,而不是多个字符(例如使用utf-8)。 例如,在python中,您将使用unicode类来表示字符串(和字符)。

答案 2 :(得分:1)

Levenshtein并不关心语言,它只是告诉你需要更改(添加,删除,交换)多少个字符才能从一个字符串到另一个字符串。

所以:是的,但是你必须检查你的字符集,一些外国的“单个”字符否则将被视为两个(或更多)字符。