Я использую Lucene в качестве наилучшего совпадения для сопоставления пользовательского ввода с длинным списком предыдущих входов для категоризации - и пока это прекрасно работает в большинстве случаев.
Проблемный пример:
Индекс:
- Ford
- Mercedes
- Honda
- Мне очень нравится Toyota
Ввод:
- ford (точное совпадение: отлично работает)
- toyota (частичное совпадение в более длинной записи индекса: отлично работает)
- я имел обыкновение иметь Mercedesно теперь я этого не делаю (более длинный текст с коротким точным соответствием содержал: обычно дает либо длинное, совершенно не связанное - нечеткое - совпадение - или ничего)
Я думаю, что я ищу, находитсамая длинная общая подпоследовательность в том случае, если это не один из первых двух случаев - но опять же, я относительно новичок в Lucene, так что, возможно, я просто не знаю достаточного количества поисковых запросов, чтобы объяснить это должным образом.