从大型列表中查找姓名变体 Ruby

Finding name variations from large list Ruby

我有一个很大的单词列表,可能有 300-600 个单词,我想这样当我的用户开始输入一个单词时,应用会建议它从我的特定列表中找到的与拼写接近的单词那个人正在给予。有点像自动完成,但单词列表是动态的并且特定于该用户。关于如何完成此操作的任何宝贵建议或技术建议?

如果你想在 ruby 中做到这一点,你可以使用模糊匹配算法,就像这个 gem https://github.com/seamusabshere/fuzzy_match 中使用的算法一样,检查示例:

>> FuzzyMatch.new(['seamus', 'andy', 'ben']).find('Shamus')
=> "seamus"