Поиск названий вариантов из большого списка Ruby

У меня большой список слов, может быть, 300-600 слов, и я хочу сделать так, чтобы, когда мой пользователь начал вводить слово, приложение предлагало слова, найденные в моем конкретном списке, которые близки к правописанию, которое произносит этот человек. Вроде как автозаполнение, но список слов динамичен и специфичен для этого пользователя. Какие-нибудь предложения по использованию драгоценных камней или методов, как мне это сделать?

1 ответ

Решение

Если вы хотите сделать это в ruby, вы можете использовать алгоритм нечеткого совпадения, например, тот, который используется в этом геме https://github.com/seamusabshere/fuzzy_match посмотрите пример:

>> FuzzyMatch.new(['seamus', 'andy', 'ben']).find('Shamus')
=> "seamus"
Другие вопросы по тегам