RegexTrie

public class RegexTrie
extends Object

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


RegexTrie es un trie en el que cada segmento almacenado de la clave es una regex ERROR(/Pattern) Por lo tanto, la clave almacenada completa es un List&lt;Pattern&gt; en lugar de que un List&lt;String&gt;, como en un trie estándar. Ten en cuenta que El método retrieve(String) se comparará de manera puntual con los elementos Pattern. en lugar de comprobar la igualdad puntual como en un trie estándar. Debido a esto, probablemente tienen un rendimiento bajo en conjuntos de datos grandes.

También se puede usar una entrada null en la secuencia Pattern para que funcione como comodín. Si se encuentra una null, se ignorarán todas las entradas posteriores de la secuencia. Cuando el código de recuperación encuentre un Pattern null, primero esperará a ver si entrada más específica coincide con la secuencia. Si lo hace, esa entrada más específica continuará incluso si posteriormente no coincide.

Si ninguna entrada más específica coincide, la coincidencia del comodín agregará todos los String restantes. a la lista de capturas (si está habilitada) y devuelve el valor asociado con el comodín.

Este es un ejemplo breve de la funcionalidad de comodín:

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

Resumen

Constructores públicos

RegexTrie()

Métodos públicos

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

Agrega una entrada al trie.

V retrieve(String... strings)

Para obtener un valor del trie, haz coincidir la secuencia proporcionada de String con un de ERROR(/Pattern) almacenados en el trie.

V retrieve( captures, String... strings)

Para obtener un valor del trie, haz coincidir la secuencia proporcionada de String con un de ERROR(/Pattern) almacenados en el trie.

String toString()

Constructores públicos

RegexTrie

public RegexTrie ()

Métodos públicos

borrar

public void clear ()

Pon

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

Agrega una entrada al trie.

Parámetros
value V: Es el valor que se establecerá.

patterns Pattern: Es la secuencia de ERROR(/Pattern) que debe coincidir de manera secuencial con recuperar el value asociado

Muestra
V

recuperar

public V retrieve (String... strings)

Para obtener un valor del trie, haz coincidir la secuencia proporcionada de String con un de ERROR(/Pattern) almacenados en el trie.

Parámetros
strings String: Es una secuencia de String que deben coincidir.

Muestra
V El valor asociado, o null si no se encontró ningún valor

recuperar

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

Para obtener un valor del trie, haz coincidir la secuencia proporcionada de String con un de ERROR(/Pattern) almacenados en el trie. Esta versión del método también muestra un ERROR(/List) de grupos de captura por cada ERROR(/Pattern) que coincidió.

Cada entrada en la lista externa corresponde a un nivel de Pattern en el trie. Para cada nivel, se almacenará la lista de grupos de captura. Si no hubo capturas para un nivel determinado, se almacenará una lista vacía.

Ten en cuenta que captures se ERROR(/List#clear()) antes de que comience la recuperación. Además, si falla la recuperación luego de una secuencia parcial de coincidencias, captures seguirán reflejando los grupos de captura de la coincidencia parcial.

Parámetros
captures : Es un List<List<String>> a través del cual se mostrarán los grupos de captura.

strings String: Es una secuencia de String que deben coincidir.

Muestra
V El valor asociado, o null si no se encontró ningún valor

toString

public String toString ()

Muestra
String