RegexTrie

public class RegexTrie
extends Object

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


RegexTrie, anahtarın her saklanan segmentinin normal ifade olduğu bir ERROR(/Pattern) ağacıdır. Bu nedenle, standart bir ağaçta olduğu gibi saklanan tam anahtar List&lt;String&gt; yerine List&lt;Pattern&gt; olur. retrieve(String) yönteminin, standart bir ağaçta olduğu gibi noktasal eşitlik açısından kontrol edilmek yerine noktasal olarak Pattern ile eşleştirileceğini unutmayın. Bu nedenle, büyük veri kümelerinde kötü performans gösterebilir.

Joker karakter olarak kullanmak için Pattern dizisinde null girişi de kullanılabilir. null ile karşılaşılırsa sıradaki tüm girişler yoksayılır. Alma kodu bir null Pattern ile karşılaştığında önce daha spesifik bir girişin sırayla eşleşip eşleşmediğini bekler. Bu durumda, daha spesifik giriş, daha sonra eşleşmese bile devam eder.

Daha spesifik bir giriş eşleşmezse joker karakter eşleşmesi, kalan tüm String karakterlerini yakalama listesine (etkinse) ekler ve joker karakterle ilişkili değeri döndürür.

Joker karakter işlevinin kısa bir örneği:

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

Özet

Herkese açık kurucular

RegexTrie()

Herkese açık yöntemler

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

Ağaca bir giriş ekleyin.

V retrieve(String... strings)

Sağlanan String dizisini, ağaçta depolanan ERROR(/Pattern) dizisiyle eşleştirerek ağaçtan bir değer alın.

V retrieve( captures, String... strings)

Sağlanan String dizisini, ağaçta depolanan ERROR(/Pattern) dizisiyle eşleştirerek ağaçtan bir değer alın.

String toString()

Herkese açık kurucular

RegexTrie

public RegexTrie ()

Herkese açık yöntemler

temizle

public void clear ()

bağla

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

Ağaca bir giriş ekleyin.

Parametreler
value V: Ayarlanacak değer

patterns Pattern: İlişkili value öğesini almak için sırayla eşleştirilmesi gereken ERROR(/Pattern) dizisi

İlerlemeler
V

al

public V retrieve (String... strings)

Sağlanan String dizisini, ağaçta depolanan ERROR(/Pattern) dizisiyle eşleştirerek ağaçtan bir değer alın.

Parametreler
strings String: Eşlenecek String dizisi

İlerlemeler
V İlişkili değer veya değer bulunamadıysa null

al

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

Sağlanan String dizisini, ağaçta depolanan ERROR(/Pattern) dizisiyle eşleştirerek ağaçtan bir değer alın. Yöntemin bu sürümü, eşleşen her ERROR(/Pattern) için bir ERROR(/List) yakalama grubu da döndürür.

Dış listedeki her giriş, ağaçtaki bir Pattern düzeyine karşılık gelir. Her düzey için yakalama gruplarının listesi depolanır. Belirli bir düzeyde yakalama yapılmadıysa boş bir liste saklanır.

Getirme işlemi başlamadan önce captures değerinin ERROR(/List#clear()) olacağını unutmayın. Ayrıca, kısmi bir eşleşme dizisi sonrasında getirme işlemi başarısız olursa captures, kısmi eşleşmedeki yakalama gruplarını yansıtmaya devam eder.

Parametreler
captures : Yakalama gruplarının döndürüleceği bir List<List<String>>.

strings String: Eşlenecek String dizisi

İlerlemeler
V İlişkili değer veya değer bulunamadıysa null

toString

public String toString ()

İlerlemeler
String