RegexTrie
public class RegexTrie
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.RegexTrie<V> |
Il RegexTrie è un trie in cui ciascunoERROR(/Pattern)
. Quindi, il pienoList<Pattern>
anziché un List<String>
come in un trie standard. Si noti che il metodo retrieve(String)
verrà confrontato puntualmente con i Pattern
, anziché verificare l'uguaglianza puntuale come in un trie standard. Per questo motivo, potrebbe funzionare in modo scarso per set di dati di grandi dimensioni.
null
nella sequenza Pattern
come carattere jolly. Se viene riscontrato un null
, tutte le voci successive nella sequenza verranno ignorate. Quando il codice di recupero incontra un Pattern
null
, attenderà prima di vedere se una voce più specifica corrisponde alla sequenza. In tal caso, la voce più specifica proseguirà, anche se successivamente non riuscirà a trovare una corrispondenza. Se nessuna voce più specifica corrisponde, la corrispondenza con carattere jolly aggiungerà tutte String
rimanenti all'elenco delle acquisizioni (se abilitate) e restituirà il valore associato al carattere jolly. Un breve esempio della funzionalità dei 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, abbinando la sequenza fornita di |
V | retrieve ( captures, String... strings) retrieve ( captures, String... strings) Recupera un valore dal trie, abbinando la sequenza fornita di |
String | toString () |
Costruttori pubblici
RegexTrie
public RegexTrie ()
Metodi pubblici
chiaro
public void clear ()
Mettere
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) che devono essere abbinati in sequenza per recuperare il value associato |
ritorna | |
---|---|
V |
recuperare
public V retrieve (String... strings)
Recupera un valore dal trie, abbinando la sequenza fornita di String
a una sequenza di ERROR(/Pattern)
memorizzata nel trie.
Parametri | |
---|---|
strings | String : una sequenza di String da abbinare |
ritorna | |
---|---|
V | Il valore associato oppure null se non è stato trovato alcun valore |
recuperare
public V retrieve (captures, String... strings)
Recupera un valore dal trie, abbinando la sequenza fornita di String
a una sequenza di ERROR(/Pattern)
memorizzata nel trie. Questa versione del metodo restituisce inoltre un ERROR(/List)
di gruppi di acquisizione per ciascun ERROR(/Pattern)
corrispondente.
Pattern
nel trie. Per ogni livello verrà memorizzato l'elenco dei gruppi di acquisizione. Se non sono state effettuate acquisizioni per un livello particolare, verrà memorizzato un elenco vuoto. Tieni presente che captures
verranno modificate con ERROR(/List#clear())
prima dell'inizio del recupero. Inoltre, se il recupero non riesce dopo una sequenza parziale di corrispondenze, captures
rifletteranno comunque i gruppi di acquisizione della corrispondenza parziale.Parametri | |
---|---|
captures | List<List<String>> attraverso il quale verranno restituiti i gruppi di acquisizione. |
strings | String : una sequenza di String da abbinare |
ritorna | |
---|---|
V | Il valore associato oppure null se non è stato trovato alcun valore |
accordare
public String toString ()
ritorna | |
---|---|
String |