Faccina con espressione regolare
public
class
RegexTrie
extends Object
java.lang.Object | |
🎞 | com.android.tradefed.util.RegexTrie<V> |
RegexTrie è un trie in cui ogni segmento ERROR(/Pattern)
. Di conseguenza, la chiave completa List<Pattern>
rispetto a List<String>
come in un trie standard. Tieni presente che
Verrà confrontato il metodo retrieve(String)
con i Pattern
,
anziché essere verificata per l'uguaglianza puntuale come in un trie standard. Per questo motivo,
non è adatto per i set di dati
di grandi dimensioni.
È possibile utilizzare anche una voce null
nella sequenza Pattern
come carattere jolly. Se
viene rilevato un null
, tutte le voci successive della sequenza verranno ignorate.
Quando il codice di recupero rileva un Pattern
null
, prima attende per verificare se un
una voce più specifica corrisponde alla sequenza. In tal caso, l'immissione più specifica andrà avanti,
anche se in seguito non corrisponde.
Se non esistono corrispondenze di voci più specifiche, la corrispondenza con caratteri jolly aggiungerà tutti i valori String
rimanenti
all'elenco delle acquisizioni (se abilitate) e restituisce il valore associato al carattere jolly.
Un breve esempio della funzionalità con caratteri jolly:
List<List<String>> captures = new LinkedList<List<String>>(); RegexTrie<Integer> trie = new RegexTrie<Integer>(); trie.put(2, "a", null); trie.put(4, "a", "b"); trie.retrieve(captures, "a", "c", "e"); // returns 2. captures is now [[], ["c"], ["e"]] trie.retrieve(captures, "a", "b"); // returns 4. captures is now [[], []] trie.retrieve(captures, "a", "b", "c"); // returns null. captures is now [[], []]
Riepilogo
Costruttori pubblici | |
---|---|
RegexTrie()
|
Metodi pubblici | |
---|---|
void
|
clear()
|
V
|
put(V value, Pattern... patterns)
Aggiungi una voce al trie. |
V
|
retrieve(String... strings)
Recupera un valore dal trie associando la sequenza fornita di |
V
|
retrieve(
Recupera un valore dal trie associando la sequenza fornita di |
String
|
toString()
|
Costruttori pubblici
Faccina con espressione regolare
public RegexTrie ()
Metodi pubblici
cancella
public void clear ()
passami
public V put (V value, Pattern... patterns)
Aggiungi una voce al trie.
Parametri | |
---|---|
value |
V : il valore da impostare |
patterns |
Pattern : la sequenza di ERROR(/Pattern) da abbinare in sequenza
recupera il value associato |
Ritorni | |
---|---|
V |
recupera
public V retrieve (String... strings)
Recupera un valore dal trie associando la sequenza fornita di String
s a un
sequenza di ERROR(/Pattern)
archiviati nel trie.
Parametri | |
---|---|
strings |
String : una sequenza di String s da abbinare |
Ritorni | |
---|---|
V |
Il valore associato o null se non è stato trovato alcun valore |
recupera
public V retrieve (captures, String... strings)
Recupera un valore dal trie associando la sequenza fornita di String
s a un
sequenza di ERROR(/Pattern)
archiviati nel trie. Anche questa versione del metodo restituisce
un ERROR(/List)
di gruppi di acquisizione per ogni ERROR(/Pattern)
corrispondente.
Ogni voce nell'elenco esterno corrisponde a un livello di Pattern
nel trie.
Per ogni livello, verrà archiviato l'elenco dei gruppi di acquisizione. Se non sono state acquisite acquisizioni
per un determinato livello, verrà archiviato un elenco vuoto.
Tieni presente che captures
verrà ERROR(/List#clear())
prima dell'inizio del recupero.
Inoltre, se il recupero non va a buon fine dopo una sequenza parziale di corrispondenze, captures
rifletteranno comunque i gruppi acquisiti
dalla corrispondenza parziale.
Parametri | |
---|---|
captures |
: un List<List<String>> attraverso il quale verranno restituiti i gruppi di acquisizione. |
strings |
String : una sequenza di String s da abbinare |
Ritorni | |
---|---|
V |
Il valore associato o null se non è stato trovato alcun valore |
ToString
public String toString ()
Ritorni | |
---|---|
String |