Domanda

How i can search by part of word with dismax? For example when my query is "wor" i want get results with "word" "world" "adwords" etc. fields values. Is it possible?

È stato utile?

Soluzione

Check for EdgeNGramFilterFactory filter

<filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="25" side="front"/>

EdgeNGramFilterFactory generates edge grams for the token e.g.

word would generate -> wo, wor, word .....

You can use this at index time to generate the tokens. So when you search for wor, documents with word would match

However, if you want to search in the mid of the words check for NGramFilterFactory

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top