RegexTrie

public class RegexTrie
extends Object

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


Le RegexTrie est un trie où chacun stockée segment de la clé est une ERROR(/Pattern) regex ERROR(/Pattern) . Ainsi, le plein stockée clé est une List&lt;Pattern&gt; plutôt qu'une 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 vérifiée pour l'égalité point par point comme dans un trie standard. Pour cette raison, il peut fonctionner mal pour les grands ensembles de données.

On peut également utiliser une entrée null dans la séquence Pattern pour servir de joker. Si une valeur null est rencontrée, toutes les entrées suivantes de la séquence seront 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 tel est le cas, cette entrée plus spécifique continuera, même si elle échoue par la suite.

Si aucune entrée plus spécifique ne correspond, la correspondance générique ajoutera toutes les String restantes à la liste des captures (si activée) et renverra la valeur associée au caractère générique.

Un court exemple de la fonctionnalité générique:

 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 fournie deString s à une séquence d' ERROR(/Pattern) s stockée dans le trie.

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

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

String toString ()

Constructeurs publics

RegexTrie

public RegexTrie ()

Méthodes publiques

dégager

public void clear ()

mettre

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

Ajoutez une entrée au trie.

Paramètres
value V : la valeur à définir

patterns Pattern : la séquence d' ERROR(/Pattern) s qui doivent être mises en correspondance séquentiellement pour récupérer la value associée

Retour
V

récupérer

public V retrieve (String... strings)

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

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

Retour
V La 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 fournie deString s à une séquence d' ERROR(/Pattern) s stockée dans le trie. Cette version de la méthode renvoie également une ERROR(/List) de groupes de capture pour chaque ERROR(/Pattern) correspondant.

Chaque entrée de la liste externe correspond à un niveau de Pattern dans le trie. Pour chaque niveau, la liste des groupes de capture sera stockée. S'il n'y a pas eu de capture pour un niveau particulier, une liste vide sera stockée.

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

Paramètres
captures : Une List<List<String>> travers laquelle les groupes de capture seront renvoyés.

strings String : une séquence deString à faire correspondre

Retour
V La valeur associée, ou null si aucune valeur n'a été trouvée

toString

public String toString ()

Retour
String