2009-11-17 7 views

risposta

16

In genere ciò viene eseguito con lo SpellCheckComponent, che utilizza internamente il Lucene SpellChecker per impostazione predefinita, che implementa Levenshtein.

Il wiki spiega davvero molto bene come funziona, come configurarlo e quali opzioni sono disponibili, nessun punto lo ripete qui.

Oppure è possibile utilizzare solo Lucene's fuzzy search operator.

Un'altra opzione è l'utilizzo di phonetic filter anziché di Levenshtein.

+0

Mauricio, potresti controllare i due collegamenti con l'operatore di ricerca fuzzy e il filtro fonetico? entrambi sembrano essere rotti. Grazie! – reto

3

Grande risposta di Mauricio, la mia unica aggiunta "cheapo" è quella di aggiungere semplicemente il carattere ~ a tutti i termini che vuoi sfociare in corrispondenza della strada da seguire. Se stai usando la configurazione di default, questo ti darà una corrispondenza fuzzy.

+0

@MattMcKnight: Voglio fare la stessa misura di distanza in solr ma ** ~ ** non funziona nella mia .. Ho provato a usare **? Q = termine: "mela" ~ 2 ** Qualsiasi aiuto – iNikkz

+0

@iNikkz Se metti le virgolette attorno alla mela, penso che diventi una frase di frase, quindi ~ 2 significa ricerca di prossimità, invece di modificare la distanza. Prova a rilasciare le virgolette – MattMcKnight

+0

@MattMcKnight: Ho provato a eliminare le virgolette, ma dà troppi risultati perché ho usato il filtro fonetico sia sull'indice che sulla query. Ho incollato la mia domanda qui - [http://stackoverflow.com/questions/27484326/getting-most-likely-documents-of-the-query-using-phonetic-filter-in-solr]. Mi aiuterete per favore? – iNikkz

Problemi correlati