RegexTrie

public class RegexTrie
extends Object

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


RegexTrie her birinin olduğu bir üçlüdür saklanmış anahtarın bölümü bir normal ifadedir ERROR(/Pattern) . Böylece tam saklanmış anahtar bir List&lt;Pattern&gt; List&lt;String&gt; yerine standart denemede olduğu gibi. retrieve(String) yönteminin, standart bir try'de olduğu gibi noktasal eşitlik açısından kontrol edilmek yerine, Pattern s ile noktasal olarak eşleştirileceğini unutmayın. Bu nedenle büyük veri kümeleri için düşük performans gösterebilir.

Ayrıca joker karakter olarak hizmet etmek için Pattern dizisindeki null bir giriş de kullanılabilir. Bir null değeriyle karşılaşılırsa dizideki sonraki tüm girişler göz ardı edilecektir. Alma kodu null bir Pattern karşılaştığında, ilk önce daha spesifik bir girişin diziyle eşleşip eşleşmediğini görmek için bekleyecektir. Böyle bir durumda, daha sonra eşleşme başarısız olsa bile, daha spesifik olan bu giriş devam edecektir.

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

Joker karakter işlevselliğinin 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

Kamu inşaatçıları

RegexTrie ()

Genel yöntemler

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

Trie'ye bir giriş ekleyin.

V retrieve (String... strings)

Sağlanan String dizisini, trie'de depolanan ERROR(/Pattern) dizisiyle eşleştirerek trie'den bir değer alın.

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

Sağlanan String dizisini, trie'de depolanan ERROR(/Pattern) dizisiyle eşleştirerek trie'den bir değer alın.

String toString ()

Kamu inşaatçıları

RegexTrie

public RegexTrie ()

Genel yöntemler

temizlemek

public void clear ()

koymak

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

Trie'ye bir giriş ekleyin.

Parametreler
value V : Ayarlanacak değer

patterns Pattern : İlgili value almak için sırayla eşleştirilmesi gereken ERROR(/Pattern) dizisi

İadeler
V

geri almak

public V retrieve (String... strings)

Sağlanan String dizisini, trie'de depolanan ERROR(/Pattern) dizisiyle eşleştirerek trie'den bir değer alın.

Parametreler
strings String : Eşleşecek bir String dizisi

İadeler
V İlişkili değer veya değer bulunamazsa null

geri almak

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

Sağlanan String dizisini, trie'de depolanan ERROR(/Pattern) dizisiyle eşleştirerek trie'den bir değer alın. Yöntemin bu sürümü aynı zamanda eşleşen her ERROR(/Pattern) için yakalama gruplarının bir ERROR(/List) döndürür.

Dış Listedeki her giriş, üçlüdeki Pattern bir düzeyine karşılık gelir. Her seviye için yakalama gruplarının listesi saklanacaktır. Belirli bir seviye için yakalama yoksa boş bir liste saklanacaktır.

captures , alma işlemi başlamadan önce ERROR(/List#clear()) ed olacağını unutmayın. Ayrıca, kısmi eşleşme dizisinden sonra alma işlemi başarısız olursa, captures yine de kısmi eşleşmedeki yakalama gruplarını yansıtacaktır.

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

strings String : Eşleşecek bir String dizisi

İadeler
V İlişkili değer veya değer bulunamazsa null

toString

public String toString ()

İadeler
String