lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erick Erickson <erickerick...@gmail.com>
Subject Re: How to do partial beginning matches
Date Thu, 06 May 2010 17:09:03 GMT
Most of what I've gleaned has come off the users list, but then I've been
monitoring it for several years. You can search all the back posts here:
http://www.lucidimagination.com/search/?q=#/p:lucene,solr

<http://www.lucidimagination.com/search/?q=#/p:lucene,solr>for instance
searching wildcard AND ngram produces some interesting
stuff...

Best
Erick

On Thu, May 6, 2010 at 9:45 AM, Felix Pendergast
<felixpendergast@gmail.com>wrote:

> Thank you, Erick.
> Where can I find more information about the *term* queries and how to solve
> them? It might come up in the future. Are there blogs, or books, or
> something?
> Thanks,
> Felix
>
> 2010/5/6 Erick Erickson <erickerickson@gmail.com>
>
> > There's really no connection between NGrams and *. NGrams can be used
> > to handle hairy wildcard expressions, in particular searching for things
> > like
> > *blah* is one potential use of NGrams.
> >
> > But your problem is simple to solve without bothering with NGrams, just
> use
> > the "begin*" syntax, no special indexing required...
> >
> > A bunch of work has been done to make wildcard queries more friendly, but
> > do note that this is a more complex problem than you might initially
> think,
> > so
> > don't be surprised if you revisit your solution as your project
> matures...
> >
> > HTH
> > Erick
> >
> > On Thu, May 6, 2010 at 8:11 AM, Felix Pendergast
> > <felixpendergast@gmail.com>wrote:
> >
> > > Hello,
> > >
> > > I'm trying to search for partial beginning matches on a big list of
> > > lastnames. So Wein* should find Weinberg, Weinkamm etc.
> > >
> > > I could do this by creating a special field, and adding
> > >  <filter class="solr.EdgeNGramFilterFactory" minGramSize="1"
> > > maxGramSize="50" preserveOriginal="1"/>
> > > to its type specification in schema.xml. When I add the line above only
> > to
> > > the indexing analyzer and leave it empty for the query analyzer, I can
> > then
> > > search by just search special_field:Wein and get the expected results.
> > >
> > > Now I see that solr also has a *-syntax. What's the connection between
> > > EdgeNGramFilterFactory and the *-syntax?
> > >
> > > Am I doing things correctly or is there a better, more regular way?
> > >
> > > Thanks,
> > > Felix
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message