Lucene NOOB alert!Типы запросов в Lucene
Я считаю себя человеком по крайней мере разумного интеллекта, однако у меня возникают огромные проблемы, мысленно грызущие типы запросов в Lucene.
В моем конкретном случае мне нужно найти одноименное поле в моем документе, имеющее только длину moedrate (около 50 символов).
Я хочу, чтобы пользователь мог вводить начало слов в предмет, который они ищут. И я также не хочу диктовать порядок, который они предоставляют.
Пример поле: «общая сила бренда»
Если поисковый запрос: «общая сила бренда» «бренд родовой сила» ... «отруби ул поколение» «отруби родового ул» . .. и т. Д.
Возможно, я могу хранить свою информацию (каждое слово в примере) в отдельных полях, если это поможет, но я не уверен, что это будет.
В настоящее время я потерялся в мире нечетких подстановочных знаков и многосрочных фраз.
Может ли кто-нибудь прояснить весь этот сценарий для меня? (И да, я много раз искал в Интернете помощь, но не могу найти достойный ресурс).
BTW Я использую Lucene 2.9, но я не думаю, что это действительно важно.
+1 для решения подстановочных знаков. Самый простой, хотя он может вызвать проблемы с производительностью для больших индексов. – bajafresh4life
Есть ли заметная разница между использованием запроса wilcard (путем добавления звездочки) и PrefixQuery? Они кажутся мне одинаковыми. Мысли? Они в основном сводятся к одному и тому же? – berko
Да, они идентичны. Javadocs описывают это так: «Запрос, который соответствует документам, содержащим термины с указанным префиксом. PrefixQuery построен QueryParser для ввода, например, приложения *». – Mikos