Domanda

Non riesco a capire come trovare le corrispondenze sottostringa con SOLR, ho capito le partite sulla base di un prefisso in modo da posso ottenere il prosciutto per abbinare hamburger.

Come potrei ottenere una ricerca di 'hamburger' per indicare l'hamburger come bene? Ho provato a hamburger , ma questo gettato un errore '*' o '?' non sono ammessi come primo carattere WildcardQuery.

Come posso abbinare stringhe utilizzando SOLR?

È stato utile?

Soluzione

È possibile attivare questo, ma sarà molto affamato di risorse (ad esempio la ricerca di SuffixQuery).

See: http: //lucene.472066.n3 .nabble.com / Leading-Ricerca-Wildcard-td522362.html

Citando il mailing list: arounds di lavoro? Immaginate di fare un secondo indice (o l'aggiunta di un altro campo), con tutti i termini scritte al contrario.

=>

Vedere Add ReverseStringFilter https://issues.apache.org/jira/browse/ Lucene-1398

e supporto per i caratteri jolly efficienti principali della ricerca: https://issues.apache.org / jira / browse / SOLR-1321

Al momento issues.apache.org sembra giù. Cercate di usare per esempio google cache.

Altri suggerimenti

Se qualcuno finisce qui dopo la ricerca per "apachesolr sottostringa", c'è una soluzione più semplice per questo: https: // drupal .stackexchange.com / a / 27956/10419 (da https://drupal.stackexchange.com/questions/26024/how-can-i-make-search-with-a-substring-of-a-word )

  

Aggiungi ngramfilter alla definizione del tipo di testo in schema.xml in solr config   directory.

<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
  <analyzer type="index">
    <filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="25" />

Come già detto in è possibile utilizzare i caratteri jolly che portano con edismax (ExtendedDismaxQParser). Basta provare a vedere se è abbastanza veloce.

Alcuni maggiori informazioni sul reversedstring di cui sopra può essere trovato qui: solr.ReversedWildcardFilterFactory

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