lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sirish Vadala <vsirishre...@yahoo.co.in>
Subject Phrase Query Problem
Date Mon, 17 Dec 2007 18:38:22 GMT

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: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message