0

我在下拉列表中有一个单词列表,我有一个单词正在寻找合适的合作伙伴(用户正在选择它)为了使用户更容易(因为列表可能很长并且过程必须快速) 我想给出一个可能的选择。

我已经看过了我是如何更改所选单词的。

我想找到按字母顺序排列的“最近”选项,但我不知道如何找出哪个单词是最近的 neigbore....

我已经用谷歌搜索了我能想到的所有单词以获得解决方案,但我找不到任何东西。

有人有一个想法我该怎么做吗?

4

4 回答 4

1

levenshtein函数将计算 2 个字符串的“接近度”。您可以相对于用户的字符串对您拥有的单词进行排名,并返回具有最低值的字符串。

于 2012-05-14T15:43:31.100 回答
1

看看这个库,它包含 javascript 的模糊字符串匹配函数,包括词干、列文斯坦距离和变音:http ://code.google.com/p/yeti-witch/

于 2012-05-14T15:43:42.747 回答
0

如果按字母顺序表示从左侧读取的匹配字母,那么答案很简单。只需浏览单词的每个字母并将其与选择下拉列表中的字母进行比较。共享最长起始子字符串的单词是您的“最近的”。

于 2012-05-14T15:38:03.967 回答
0

<javascript 中最简单(可能也是最快)的事情是(通过二进制搜索)使用和>字符串运算符找到将单词放在选项单词的排序数组中的位置。

要获得更高级和更精确的结果,请使用Levenshtein distance

于 2012-05-14T15:46:01.670 回答