RegexTrie

public class RegexTrie
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.RegexTrie<V>


RegexTrie est un trie dans lequel chaque segment stocké de la clé est une expression régulière ERROR(/Pattern). Par conséquent, la clé stockée complète est un List&lt;Pattern&gt; plutôt qu'un List&lt;String&gt;, comme dans un trie standard. Notez que la méthode retrieve(String) sera mise en correspondance point par point avec les Pattern, plutôt que de vérifier l'égalité point par point comme dans un trie standard. Par conséquent, ses performances peuvent être médiocres pour les ensembles de données volumineux.

Vous pouvez également utiliser une entrée null dans la séquence Pattern pour servir de caractère générique. Si un null est détecté, toutes les entrées suivantes de la séquence sont ignorées. Lorsque le code de récupération rencontre un Pattern null, il attend d'abord de voir si une entrée plus spécifique correspond à la séquence. Si c'est le cas, cette entrée plus spécifique sera traitée, même si elle ne correspond pas par la suite.

Si aucune entrée plus spécifique ne correspond, la correspondance de caractère générique ajoute tous les String restants à la liste des captures (si elle est activée) et renvoie la valeur associée au caractère générique.

Voici un bref exemple de la fonctionnalité de caractères génériques:

 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 [[], []]
 

Résumé

Constructeurs publics

RegexTrie()

Méthodes publiques

void clear()
V put(V value, Pattern... patterns)

Ajoutez une entrée au trie.

V retrieve(String... strings)

Récupérez une valeur du trie en faisant correspondre la séquence de Strings fournie à une séquence de ERROR(/Pattern)s stockée dans le trie.

V retrieve( captures, String... strings)

Récupérez une valeur du trie en faisant correspondre la séquence de Strings fournie à une séquence de ERROR(/Pattern)s stockée dans le trie.

String toString()

Constructeurs publics

RegexTrie

public RegexTrie ()

Méthodes publiques

effacer

public void clear ()

CANNOT TRANSLATE

public V put (V value, 
                Pattern... patterns)

Ajoutez une entrée au trie.

Paramètres
value V: valeur à définir

patterns Pattern: séquence de ERROR(/Pattern) qui doit être mise en correspondance de manière séquentielle pour récupérer le value associé

Renvoie
V

récupération

public V retrieve (String... strings)

Récupérez une valeur du trie en faisant correspondre la séquence de Strings fournie à une séquence de ERROR(/Pattern)s stockée dans le trie.

Paramètres
strings String: séquence de String à faire correspondre

Renvoie
V Valeur associée ou null si aucune valeur n'a été trouvée

récupération

public V retrieve ( captures, 
                String... strings)

Récupérez une valeur du trie en faisant correspondre la séquence de Strings fournie à une séquence de ERROR(/Pattern)s stockée dans le trie. Cette version de la méthode renvoie également un ERROR(/List) de groupes de capture pour chaque ERROR(/Pattern) mis en correspondance.

Chaque entrée de la liste externe correspond à un niveau de Pattern dans l'arborescence triée. Pour chaque niveau, la liste des groupes de capture est stockée. Si aucune capture n'a été effectuée pour un niveau particulier, une liste vide est stockée.

Notez que captures sera ERROR(/List#clear()) avant le début de la récupération. De plus, si la récupération échoue après une séquence partielle de correspondances, captures reflètera toujours les groupes de capture de la correspondance partielle.

Paramètres
captures : List<List<String>> via lequel les groupes de capture seront renvoyés.

strings String: séquence de String à faire correspondre

Renvoie
V Valeur associée ou null si aucune valeur n'a été trouvée

toString

public String toString ()

Renvoie
String