Regex

public class RegexTrie
extends Object

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


„RegexTrie“ ist ein Trie, bei dem jedes gespeicherte Segment des Schlüssels ein regulärer Ausdruck ist ERROR(/Pattern) Daher ist der vollständige gespeicherte Schlüssel ein List&lt;Pattern&gt;-Wert und nicht als eine List&lt;String&gt;, wie in einem Standard-Test. Das Feld Die retrieve(String)-Methode wird punktweise mit den Pattern-Werten abgeglichen, anstatt wie bei einem Standardtrie auf punktweise Gleichheit zu prüfen. Daher kann es sein, bei großen Datasets schlecht.

Sie können auch einen null-Eintrag in der Pattern-Sequenz als Platzhalter verwenden. Wenn eine null vorliegt, werden alle nachfolgenden Einträge in der Sequenz ignoriert. Wenn der Abrufcode auf ein null Pattern stößt, wartet er zuerst darauf, ob ein spezifischeren Eintrag mit der Sequenz übereinstimmt. Ist dies der Fall, wird der spezifischere Eintrag fortgesetzt. auch wenn sie später nicht mehr übereinstimmen.

Wenn es keinen spezifischeren Eintrag gibt, werden bei der Platzhalterübereinstimmung alle verbleibenden Strings addiert. zur Liste der Erfassungen (falls aktiviert) hinzu und gibt den mit dem Platzhalter verknüpften Wert zurück.

Ein kurzes Beispiel für die Platzhalterfunktion:

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

Zusammenfassung

Öffentliche Konstruktoren

RegexTrie()

Öffentliche Methoden

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

Fügen Sie dem Test einen Eintrag hinzu.

V retrieve(String... strings)

Ruft einen Wert aus dem Trie ab, indem die angegebene Sequenz von Strings mit einem Folge von ERROR(/Pattern)-Werten, die im Trie gespeichert sind.

V retrieve( captures, String... strings)

Ruft einen Wert aus dem Trie ab, indem die angegebene Sequenz von Strings mit einem Folge von ERROR(/Pattern)-Werten, die im Trie gespeichert sind.

String toString()

Öffentliche Konstruktoren

Regex

public RegexTrie ()

Öffentliche Methoden

Löschen

public void clear ()

stellen

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

Fügen Sie dem Test einen Eintrag hinzu.

Parameter
value V: festzulegender Wert

patterns Pattern: Die Sequenz von ERROR(/Pattern)-Werten, die nacheinander abgeglichen werden müssen Verknüpfte value abrufen

Returns
V

abrufen

public V retrieve (String... strings)

Ruft einen Wert aus dem Trie ab, indem die angegebene Sequenz von Strings mit einem Folge von ERROR(/Pattern)-Werten, die im Trie gespeichert sind.

Parameter
strings String: Eine Sequenz von String-Werten, die abgeglichen werden sollen

Returns
V Den verknüpften Wert oder null, wenn kein Wert gefunden wurde

abrufen

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

Ruft einen Wert aus dem Trie ab, indem die angegebene Sequenz von Strings mit einem Folge von ERROR(/Pattern)-Werten, die im Trie gespeichert sind. Diese Version der Methode gibt auch ERROR(/List) von Erfassungsgruppen für jeden übereinstimmenden ERROR(/Pattern).

Jeder Eintrag in der äußeren Liste entspricht einer Pattern-Ebene im Trie. Für jede Ebene wird die Liste der Erfassungsgruppen gespeichert. Wenn es keine Aufnahmen gab wird eine leere Liste gespeichert.

Beachten Sie, dass captures vor Beginn des Abrufs ERROR(/List#clear())ed wird. Wenn der Abruf nach einer Teilsequenz von Übereinstimmungen fehlschlägt, gibt captures die Erfassungsgruppen aus der teilweisen Übereinstimmung widerspiegeln.

Parameter
captures : Ein List<List<String>>-Wert, über den Erfassungsgruppen zurückgegeben werden.

strings String: Eine Sequenz von String-Werten, die abgeglichen werden sollen

Returns
V Den verknüpften Wert oder null, wenn kein Wert gefunden wurde

toString

public String toString ()

Returns
String