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 archiviato della chiave è un'espressione regolare ERROR(/Pattern). Di conseguenza, la chiave completa archiviata è invece una chiave List&lt;Pattern&gt; rispetto a List&lt;String&gt; 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 String s a un sequenza di ERROR(/Pattern) archiviati nel trie.

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.

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