È possibile modificare i termini della query per fornire un'ampia gamma di opzioni di ricerca.
Sono supportati i seguenti modificatori di termini:
- Ricerche per carattere jolly
- Lucene supporta le ricerche per carattere jolly singolo o multiplo all'interno di singoli termini. Utilizzare il punto interrogativo (?) per una ricerca per carattere jolly singolo e un asterisco (*)
per la ricerca per carattere jolly multiplo. Le ricerche per carattere jolly multiplo cercano zero o più caratteri.
Attenzione: I caratteri jolly ? o * non possono essere utilizzati come primo carattere di una ricerca.
- Esempi:
- Per ricercare le parole test o text:
te?t
- Per ricercare test, tests o tester:
test*
- Ricerche per similitudini
- Una ricerca per similitudine è un tipo di ricerca che trova corrispondenze anche se i termini di ricerca non sono scritti correttamente o se vengono specificate solo parole parziali. Per effettuare una ricerca per similitudini, utilizzare la tilde (~) alla fine di un termine.
- Esempio:
- Per cercare un termine simile nella scrittura alla parola word:
word~
Questo termine di ricerca corrisponderà a wood, work, dword, wordy, ford ecc, come pure a word.
- Ricerche per prossimità
- Lucene supporta la capacità di trovare parole che si trovano a breve distanza da un'altra in un campo record. Per effettuare una ricerca per prossimità, utilizzare la tilde (~) seguita da un numero alla fine di una frase.
- Esempio:
- Per cercare e Beta2 entro dieci parole di una e l'altra in un campo record:
"Beta1 Beta2"~10
- Ricerche per intervallo
- Le ricerche per intervallo consentono di trovare la corrispondenza di record che contengono valori campo compresi tra i limiti inferiore e superiore specificati dalla query. Le query per intervallo possono essere inclusive o esclusive.
Le query per intervallo di tipo inclusivo sono indicate da parentesi quadre e dall'operatore
TO:
[LimiteInferiore TO LimiteSuperiore]
Le query per intervallo di tipo esclusivo sono indicate da parentesi graffe e dall'operatore
TO:
{LimiteInferiore TO LimiteSuperiore}
Le query per intervallo non sono riservate ai campi numerici. È possibile effettuare una ricerca per intervallo anche in campi con valori alfabetici. L'ordinamento viene effettuato lessicograficamente. Per tale motivo, i record restituiti da una query di ricerca per intervallo non hanno un punteggio di rilevanza.
- Esempi:
- Per trovare record con valori campo Data di inoltro tra 2007 e 2008, inclusi:
SubmitDate:[2007 TO 2008]
- Per restringere la ricerca al mese di ottobre 2007:
SubmitDate:[20071001 TO 20071031]
- Per trovare record con valori campo Data di inoltro con intervallo dal primo ottobre 2008 al record più recente nel database dell'utente, inclusi:
SubmitDate:[20081001 TO *]
- Per trovare record con valori Titolo con intervallo tra alpha e delta, includendo alpha e
escludendo delta:
Headline:[alpha TO delta}
La serie di risultati potrebbe includere record con titoli che iniziano con alpha, alpha1, beta, beta1 e beta2.
- Incremento della priorità di un termine
- Lucene fornisce un punteggio di rilevanza per la corrispondenza dei record, calcolato dai programmi di analisi configurati. Per incrementare la priorità di un termine o di una frase in una query, utilizzare il simbolo caret (^) e un fattore di incremento della priorità (un numero) dopo il termine o la frase. Quanto più elevato è il fattore di incremento della priorità, tanto più rilevante è il termine o la frase.
Il fattore di incremento della priorità predefinito è 1. Sebbene sia necessario che il fattore sia un numero positivo, può essere anche inferiore a 1, ad esempio 0.2, per diminuire la rilevanza dei record che contengono il termine o la frase.
- Esempi:
-