2009-07-10 2 views
2

Я хочу сделать запрос И, скажем, «foo AND bar», в Lucene.NET. У меня есть поле WholeIndex, в котором весь документ проиндексирован, и я хочу, чтобы Lucene выполняла поиск по всему документу. До сих пор это довольно просто, но есть ограничение.Поиск нескольких терминов в поле

Я хочу, чтобы оба термина «foo» и «bar» были в одном поле.

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

Редактировать: Что я хочу знать, если есть способ рассказать Lucene о выполнении поиска в каждом поле, не имея необходимости знать все поля в моем индексе. Автоматизированный способ поиска следующий:

"field1: (+ Foo + бар) field2: (+ Foo + бар) ... fieldN: (+ Foo + бар)"

ответ

2

Вы можете использовать GetFieldNames для получить все имена полей, а затем программно перейти по списку и создать запрос, подобный тому, который вы написали, используя BooleanQuery.

Смежные вопросы