2012-01-31 7 views
9

ad esempio, se sto cercando un indice di titoli di libri con il termine "harry", "Dirty Harry" è ugualmente assegnato a "Harry Potter", e quando due elementi sono ugualmente segnati, l'ordine è casuale. Mi piacerebbe pesare quello che inizia con il mio termine di ricerca (Harry Potter) più alto.C'è qualche modo per me di cambiare punteggio in base alla posizione di termine in Lucene?

Preferisco non utilizzare TermPostionVector poiché sembra che sia qualcosa che posso leggere solo dopo che la ricerca e il punteggio sono stati completati.

grazie per il vostro tempo/considerazione.

risposta

2

Cercare spanquery.

+0

Bene, SpanQueries viene utilizzato solo se esistono più termini di ricerca in una query, no? Ma se desiderassimo segnare "Harry" al primo posto sempre più alto di "Harry" nel secondo, indipendentemente dagli altri termini di ricerca, indipendentemente dal fatto che siano stati inseriti nella query o no? Probabilmente in questo caso abbiamo ancora bisogno di usare Span e qualcosa come SpanScorer, ma ci sono soluzioni "pronte per l'uso" o "raccomandate" o dovrei implementarle io stesso? – user3159253

Problemi correlati