I have the following code for search: BooleanQuery bQuery = new BooleanQuery(); Query queryAuthor; queryAuthor = new TermQuery(new Term(IFIELD_LEAD_AUTHOR, author.trim().toLowerCase())); bQuery.add(queryAuthor, BooleanClause.Occur.MUST); .................................................................... ....................................................................
PhraseQuery pQuery = new PhraseQuery(); String[] phrase = txtWithPhrase.toLowerCase().split(" "); for (int i = 0; i < phrase.length; i++) { pQuery.add(new Term(IFIELD_TEXT, phrase[i])); } pQuery.setSlop(0); bQuery.add(pQuery, BooleanClause.Occur.MUST); .................................................................... .................................................................... String[] sortOrder = {IFIELD_LEAD_AUTHOR, IFIELD_TEXT}; Sort sort = new Sort(sortOrder); hits = indexSearcher.search(bQuery, sort); Now My problem here is: If I do a search on a phrase with text Health Safety, it is fetching me all the records where in the text is Health and/or/in Safety. It is fetching me these records even after setting the slop of the phrase query to zero for exact match. I am using standard analyzer while indexing my records. Any help on this is greatly appreciated. Sirish Vadala -- View this message in context: http://www.nabble.com/Phrase-Query-Problem-tp14373945p14373945.html Sent from the Lucene - Java Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]