RegexTrie

public class RegexTrie
extends Object

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


RegexTrie est un trie où 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 grands ensembles de données.

Il est également possible d'utiliser une entrée null dans la séquence Pattern en tant que caractère générique. Si un null est rencontré, 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 se poursuit, même si la correspondance échoue par la suite.

Si aucune entrée plus spécifique ne correspond, la correspondance avec 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 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 à partir 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ère une valeur de la fonction trie en faisant correspondre la séquence de String fournie à une séquence de ERROR(/Pattern) stockées dans la fonction trie.

String toString()

Constructeurs publics

Expression régulière

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érer

public V retrieve (String... strings)

Récupérez une valeur à partir 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 à mettre en correspondance

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

récupérer

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. La liste des groupes de capture est stockée pour chaque niveau. 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