Искать в Apache Lucene (4.2.0) документы где-то между - PullRequest
0 голосов
/ 15 мая 2018

У меня есть несколько документов в lucene, имеющих данные в таком формате

сущность: Dalveer Singh
подтип: студент
.... так далее

Я хочу искать в сущности (скажем, в сущности) со значением. Если я ищу с помощью: dalveer* (начало значения), он возвращает какой-то результат (ы), но не тогда, когда я ищу что-то среднее (например, *singh или *)1011 *.

Есть ли способ поиска по всей строке для совпадения результата?

1 Ответ

0 голосов
/ 15 мая 2018

Это конфигурация QueryParser, которую вы должны настроить. Обычно у вас есть возможность разрешить использование подстановочных знаков для вашего QueryParser. В качестве примера StandardQueryParser с методом:

setAllowLeadingWildcard(true)

Это также зависит от того, какие поля вы используете для индексации, поскольку это влияет на процесс анализа.

  • TextField используется для полнотекстового поиска -> текст не будет размечен
  • StringField -> текст будет размечен

См. Поле JavaDoc для получения дополнительной информации об этом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...