Before Solr 3.6, which added MultiTermAwareComponent for analyzers, the presence of a wildcard completely short-circuited (prevented) the query-time analysis, so you have to manually emulate all steps of the query analyzer yourself if you want to do a wildcard. Even with 3.6, not all filters are multi-term aware.

See:
http://wiki.apache.org/solr/MultitermQueryAnalysis

Do a query for "9999.2231-7" and that will tell you which analyzer steps you will have to do manually.

-- Jack Krupansky

-----Original Message----- From: Anderson vasconcelos
Sent: Monday, May 21, 2012 11:03 AM
To: solr-user@lucene.apache.org
Subject: Re: Question about wildcards

Hi.

In debug mode, the generated query was:

<str name="rawquerystring">field:9999*2231-7</str>
<str name="querystring">field:9999*2231-7</str>
<str name="parsedquery">field:9999*2231-7</str>
<str name="parsedquery_toString">field:9999*2231-7</str>

The analisys of indexing the  text  9999.2231-7 produces this result:
Index Analyzer  9999.22317  9999.22317  9999.22317  9999.22317  #1;1322.9999
#1;7 9999.22317
And for search for 9999*2231-7 , produces this result:
Query Analyzer  999922317  999922317  999922317  999922317 999922317

I don't understand why he don't find results when i use field:9999*2231-7.
When i use field:9999*2231 without "-7" the document was found.

How Ahmet said, i think they using "-7" to ignore the document. But in
debug query, they don't show this.

Any idea to solve this?

Thanks


2012/5/18 Ahmet Arslan <iori...@yahoo.com>



> I have a field that was indexed with the string
> "9999.2231-7". When i
> search using '*' or '?' like this "9999*2231-7" the query
> don't returns
> results. When i remove "-7" substring and search agin using
> "9999*2231" the
> query returns. Finally when i search using
> "9999.2231-7" the query returns
> too.

May be standard tokenizer is splitting 9999.2231-7 into multiple tokens?
You can check that admin/analysis page.

May be -7 is treated as negative clause? You can check that with
&debugQuery=on



Reply via email to