2015-10-11 2 views
1

Общий новичок, когда дело доходит до синтаксиса Lucene Query, поэтому вам нужно немного помочь!Lucene Query Синтаксис Поиск

Поиск в базе данных по электронной почте и с помощью

email: <someone's email here> 

в URL, как поиск парам.

Как можно было бы реализовать это, чтобы вернуть запись только с точным адресом электронной почты?

Так что, если бы я был искать

email: [email protected] 

и база данных содержала «[email protected]» и «[email protected]» только последний будет возвращен?

Я взглянул на http://www.lucenetutorial.com/lucene-query-syntax.html, однако ответ уходит от меня.

Любая помощь будет очень признательна, как всегда!

ответ

1

Это вопрос анализатора.

Если вы хотите найти точное слово, вы должны создать поле адреса с Field.Index.NOT_ANALYZED, после чего адрес «[email protected]» будет проанализирован на «[email protected]».

код так:

Document doc = new Document(); 
doc.add(new Field("email", "[email protected]", Field.Store.YES, Field.Index.NOT_ANALYZED));