PhraseQuery: условия строго ищутся в их порядке? - PullRequest
2 голосов
/ 28 февраля 2011

Ищутся ли термины с помощью PhraseQuery в Lucene, строго ли они соответствуют их порядку в предложении?

Например, если у меня есть «A B C» и документ содержит «A C B», возвращает ли PhraseQuery попадание?

спасибо

Ответы [ 2 ]

1 голос
/ 02 мая 2012

Нет, если вы используете slop в вашем PhraseQuery.

Устанавливает количество других слов, разрешенных между словами в запросе. фраза. Если ноль, то это точный поиск по фразе. Для большего значения это работает как оператор WITHIN или NEAR.

Отклонение - это фактически расстояние редактирования, где единицы соответствуют перемещения терминов в фразе запроса вне позиции. Например, чтобы Переключение порядка двух слов требует двух ходов (первый ход помещает слова друг на друга), чтобы можно было фразы, помои должны быть не менее двух.

Более точные совпадения оцениваются выше, чем небрежные совпадения, поэтому результаты поиска отсортированы по точности.

Отклонение по умолчанию равно нулю, что требует точных совпадений.

1 голос
/ 28 февраля 2011

Да, порядок имеет значение.Так что в вашем примере запрос «ABC» НЕ будет соответствовать документу, содержащему «ACB».

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