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 "Zhang, Lisheng" <Li...@broadvision.com> on 2005/10/08 02:14:25 UTC
Abnormal behavior in QueryParser
Hi,
We recently encountered a strange behavior in
lucene v1.4.3 QueryParser: we call
QueryParser.parse("-1", "myidfield", new StandardAnalyzer());
and get retured query as:
-myidfield:1 // apparently we want "myidfield:-1"
Currently we can use TermQuery to avoid QueryParser
to bypass this problem, but still we would like to know
if this is a known problem or already fixed in later version?
Thanks very much for helps, Lisheng
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org
Re: Abnormal behavior in QueryParser
Posted by Erik Hatcher <er...@ehatchersolutions.com>.
On Oct 7, 2005, at 8:14 PM, Zhang, Lisheng wrote:
> We recently encountered a strange behavior in
> lucene v1.4.3 QueryParser: we call
>
> QueryParser.parse("-1", "myidfield", new StandardAnalyzer());
>
> and get retured query as:
>
> -myidfield:1 // apparently we want "myidfield:-1"
>
> Currently we can use TermQuery to avoid QueryParser
> to bypass this problem, but still we would like to know
> if this is a known problem or already fixed in later version?
This behavior is entirely by design. The - and + operators are for
prohibiting and requiring clauses, as an integral part of the query
expression language. The - can be escaped as in "\-1", though maybe
QueryParser is not appropriate for your situation.
Erik
---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org