люцен 3.0.3 |проблема запроса фразы - PullRequest
0 голосов
/ 16 февраля 2011

searchString = "Я использую sql. Настройка сервера - это простая задача.";

, когда я ищу запрос фразы "Sql Server" в приведенной выше строке, он дает неверный результат.Как и в приведенной выше строке, sql и сервер разделяются точкой (.)

, используя и PhraseQuery, и SpanQuery дает одинаковый результат.

Любое предложение будет оценено !!!

1 Ответ

0 голосов
/ 16 февраля 2011

Вы можете написать анализатор, который будет обрабатывать точки как токены, поэтому вы получите 3 токена - "sql", "." (точка) и «сервер» (я не знаю ни о каких существующих анализаторах, которые могут это сделать). Но это может привести к непредсказуемым результатам, поэтому я рекомендую вам просто игнорировать этот редкий случай . Если это не вариант, и ваша программа интенсивно использует лексическую структуру текста, я предлагаю использовать инструменты обработки естественного языка , такие как GATE вместо Lucene.

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