API нечеткого соответствия в длинном списке запросов - PullRequest
1 голос
/ 27 сентября 2010

У меня есть приложение, которое позволяет людям задавать предварительно определенные запросы.Однако список таких запросов слишком длинный.Следовательно, текущий подход состоит в том, чтобы позволить пользователям вводить слово в поле поиска и затем показывать им вероятные совпадения из списка запросов.(Очень похоже на функцию «Вы имели в виду» в Google.)

Есть ли для этого в Java API?Я должен быть в состоянии предоставить список запросов.API должен обеспечивать возможность нечеткого сопоставления, чтобы неправильное написание не имело значения.(Вот почему точного алгоритма сопоставления строк недостаточно)

Ответы [ 4 ]

0 голосов
/ 23 декабря 2010

Найдена реализация Java алгоритма исправления заклинаний Питера Норвига Немного устаревший, но хороший для начала.

  1. Корректор орфографии
  2. jSpellCorrect
0 голосов
/ 28 сентября 2010
0 голосов
/ 30 сентября 2010

Возможно, будет работать вероятностный алгоритм с использованием Soundex или его производной?http://en.wikipedia.org/wiki/Soundex

0 голосов
/ 27 сентября 2010

Волшебное слово здесь может быть " регулярное выражение " - все, что вы можете смоделировать как конечный автомат, можно сделать с помощью регулярных выражений.

В противном случае вы можете посмотреть на" деревья цифрового поиска " или " попытки ".

...