Я пытаюсь добиться нечеткого поиска по фразе (чтобы найти слова с ошибками), используя lucene, ссылаясь на различные блоги, которые я подумал, чтобы попробовать индексы ngram при нечетком поиске по фразе.
Но я не смог найти токенайзер ngram как часть моей библиотеки JAR lucene3.4, она устарела и заменена чем-то другим? - в настоящее время я использую стандартный анализатор, где я получаю приличные результаты для точного соответствия условий.
У меня ниже двух требований к ним.
В моем индексе есть документ с фразой "xyz abc pqr", когда я предоставляю запрос "abc xyz" ~ 5, я могу получить результаты, но мое требование - получить результаты для того же документа, даже если у меня есть один дополнительный слово типа "abc xyz pqr tst" в моем запросе (я понимаю, что оценка совпадения будет немного меньше) - использование лишнего слова в фразе не работает, если я удаляю близость и двойные кавычки "" из запроса, я получаю ожидаемые результаты (но там я получаю много ложных срабатываний, например, документы, содержащие только xyz, только abc и т. д.)
В том же примере, приведенном выше, если кто-то неправильно написал запрос "abc xxz", я все еще хочу получить результаты для того же документа.
Я хочу попробовать ngram, но не уверен, что он будет работать так, как ожидалось.
Есть мысли?