I re-read your original request. Here is the recipe that should work: * Define new field type that: Uses KeywordTokenizer Uses LowerCaseFilter
* Make your field be of the above type. * Use those begin/end anchor characters at index and search time. I believe that should work. Please try it and let us know. Otis -- Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch ----- Original Message ---- > From: Otis Gospodnetic <otis_gospodne...@yahoo.com> > To: solr-user@lucene.apache.org > Sent: Thursday, June 4, 2009 8:47:50 PM > Subject: Re: how to do exact serch with solrj > > > I don't think there is anything ready to be used in Solr (but would be easy > to > add), but if you indexed your with a custom "beginning of string" and "end of > string" anchors, you'll be able to get your exact matching working. > > For example, convert "hello the world" to "$hello the world$" before indexing > (and make sure you use string type or KeywordTokenizer -- things that won't > remove any characters. Then search for "$hello the world$". This will not > match "$hello the world, Jack$". > > Otis > -- > Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch > > > > ----- Original Message ---- > > From: Jianbin Dai > > To: solr-user@lucene.apache.org > > Sent: Thursday, June 4, 2009 6:42:39 PM > > Subject: Re: how to do exact serch with solrj > > > > > > I still have a problem with exact matching. > > > > query.setQuery("title:\"hello the world\""); > > > > This will return all docs with title containing "hello the world", i.e., > > "hello the world, Jack" will also be matched. What I want is exactly "hello > the > > world". Setting this field to string instead of text doesn't work well > > either, > > > because I want something like "Hello, The World" to be matched as well. > > Any idea? Thanks. > > > > > > > --- On Sat, 5/30/09, Avlesh Singh > > > wrote: > > > > > > > From: Avlesh Singh > > > > Subject: Re: how to do exact serch with solrj > > > > To: solr-user@lucene.apache.org > > > > Date: Saturday, May 30, 2009, 11:45 PM > > > > You need exact match for all the > > > > three tokens? > > > > If yes, try query.setQuery("title:\"hello the > > > world\""); > > > > > > > > Cheers > > > > Avlesh > > > > > > > > On Sun, May 31, 2009 at 12:12 PM, Jianbin Dai > > > > wrote: > > > > > > > > > > > > > > I tried, but seems it's not working right. > > > > > > > > > > --- On Sat, 5/30/09, Avlesh Singh > > > > wrote: > > > > > > > > > > > From: Avlesh Singh > > > > > > Subject: Re: how to do exact serch with > > > solrj > > > > > > To: solr-user@lucene.apache.org > > > > > > Date: Saturday, May 30, 2009, 10:56 PM > > > > > > query.setQuery("title:hello the > > > > > > world") is what you need. > > > > > > > > > > > > Cheers > > > > > > Avlesh > > > > > > > > > > > > On Sun, May 31, 2009 at 6:23 AM, Jianbin > > > Dai > > > > > > > > > > wrote: > > > > > > > > > > > > > > > > > > > > Hi, > > > > > > > > > > > > > > I want to search "hello the world" in > > > the > > > > "title" > > > > > > field using solrj. I set > > > > > > > the query filter > > > > > > > query.addFilterQuery("title"); > > > > > > > query.setQuery("hello the world"); > > > > > > > > > > > > > > but it returns not exact match results > > > as > > > > well. > > > > > > > > > > > > > > I know one way to do it is to set > > > "title" > > > > field to > > > > > > string instead of text. > > > > > > > But is there any way i can do it? If I > > > do > > > > the search > > > > > > through web interface > > > > > > > Solr Admin by title:"hello the world", > > > it > > > > returns > > > > > > exact matches. > > > > > > > > > > > > > > Thanks. > > > > > > > > > > > > > > JB > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >