You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@lucene.apache.org by Peru Redmi <pe...@gmail.com> on 2016/11/21 15:44:00 UTC
Understanding Query Parser Behavior
Hello All ,
Could someone explain *QueryParser* behavior on these cases
1. While Indexing ,
Document doc = new Document();
doc.add(new Field("*Field*", "*http://www.google.com
<http://www.google.com/>*", Field.Store.YES, Field.Index.ANALYZED));
index has *two* terms - *http* & *www.google.com
<http://www.google.com/>*
*2.* While searching ,
Analyzer anal = new *ClassicAnalyzer*(Version.LUCENE_30, new
StringReader(""));
QueryParser parser=new *MultiFieldQueryParser*(Version.LUCENE_30, new
String[]{"*Field*"},anal);
Query query = parser.parse("*http://www.google.com <http://www.google.com/>*
");
Now , query has *three *terms - (Field:http) *(Field://)* (Field:
www.google.com)
i) Why I have got 3 terms while parsing , and 2 terms on indexing (Using
same ClassicAnalyzer in both cases ) ?
ii) is this expected behavior of ClassicAnalyzer(Version.LUCENE_30) on
Parser ?
iii) what should be done to avoid query part *(Field://) *?
Thanks,
Peru.