RegexTrie

public class RegexTrie
extends Object

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


Der RegexTrie ist ein Versuch, bei dem jeder gelagert Segment des Schlüssels ist ein regulärer Ausdruck ERROR(/Pattern) . Also das volle gelagert Schlüssel ist ein List&lt;Pattern&gt; statt einer List&lt;String&gt; wie bei einem Standardversuch. Beachten Sie, dass die Methode retrieve(String) punktweise mit den Pattern s abgeglichen wird und nicht wie bei einem Standardversuch auf punktweise Gleichheit überprüft wird. Aus diesem Grund kann es bei großen Datensätzen zu einer schlechten Leistung kommen.

Man kann auch einen null in der Pattern als Platzhalter verwenden. Wenn eine null auftritt, werden alle nachfolgenden Einträge in der Sequenz ignoriert. Wenn der Abrufcode auf ein null Pattern trifft, wartet er zunächst, ob ein spezifischerer Eintrag mit der Sequenz übereinstimmt. Wenn dies der Fall ist, wird dieser spezifischere Eintrag fortgesetzt, auch wenn er später nicht mehr übereinstimmt.

Wenn kein spezifischerer Eintrag übereinstimmt, fügt der Wildcard-Abgleich alle verbleibenden String s zur Liste der Captures hinzu (falls aktiviert) und gibt den mit dem Wildcard verknüpften Wert zurück.

Ein kurzes Beispiel der Wildcard-Funktionalität:

 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 Bauträger

RegexTrie ()

Öffentliche Methoden

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

Fügen Sie dem Versuch einen Eintrag hinzu.

V retrieve (String... strings)

Rufen Sie einen Wert aus dem Trie ab, indem Sie die bereitgestellte Folge von String s mit einer im Trie gespeicherten Folge von ERROR(/Pattern) s abgleichen.

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

Rufen Sie einen Wert aus dem Trie ab, indem Sie die bereitgestellte Folge von String s mit einer im Trie gespeicherten Folge von ERROR(/Pattern) s abgleichen.

String toString ()

Öffentliche Bauträger

RegexTrie

public RegexTrie ()

Öffentliche Methoden

klar

public void clear ()

setzen

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

Fügen Sie dem Versuch einen Eintrag hinzu.

Parameter
value V : Der einzustellende Wert

patterns Pattern : Die Folge von ERROR(/Pattern) s, die nacheinander abgeglichen werden müssen, um den zugehörigen value abzurufen

Kehrt zurück
V

abrufen

public V retrieve (String... strings)

Rufen Sie einen Wert aus dem Trie ab, indem Sie die bereitgestellte Folge von String s mit einer im Trie gespeicherten Folge von ERROR(/Pattern) s abgleichen.

Parameter
strings String : Eine Folge von String s, die übereinstimmen sollen

Kehrt zurück
V Der zugehörige Wert oder null , wenn kein Wert gefunden wurde

abrufen

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

Rufen Sie einen Wert aus dem Trie ab, indem Sie die bereitgestellte Folge von String s mit einer im Trie gespeicherten Folge von ERROR(/Pattern) s abgleichen. Diese Version der Methode gibt außerdem einen ERROR(/List) von Erfassungsgruppen für jeden übereinstimmenden ERROR(/Pattern) zurück.

Jeder Eintrag in der äußeren Liste entspricht einer Pattern im Versuch. Für jede Ebene wird die Liste der Erfassungsgruppen gespeichert. Wenn für ein bestimmtes Level keine Aufnahmen gemacht wurden, wird eine leere Liste gespeichert.

Beachten Sie, dass captures ERROR(/List#clear()) werden, bevor der Abruf beginnt. Auch wenn der Abruf nach einer Teilsequenz von Übereinstimmungen fehlschlägt, spiegeln captures weiterhin die Erfassungsgruppen aus der Teilübereinstimmung wider.

Parameter
captures : Eine List<List<String>> über die Erfassungsgruppen zurückgegeben werden.

strings String : Eine Folge von String s, die übereinstimmen sollen

Kehrt zurück
V Der zugehörige Wert oder null , wenn kein Wert gefunden wurde

toString

public String toString ()

Kehrt zurück
String