Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

正則表達式

public class RegexTrie
extends Object

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


RegexTrie是一個Trie,其中每個儲存的鍵的段是regex ERROR(/Pattern) 。因此,完整儲存的鍵是List&lt;Pattern&gt;而不是List&lt;String&gt;就像在標準特里裡一樣。請注意, retrieve(String)方法將與Pattern進行逐點匹配,而不是像在標準trie中一樣檢查逐點相等性。因此,它對於大型數據集可能效果不佳。

也可以在Pattern序列中使用null條目作為通配符。如果遇到null ,則序列中的所有後續條目都將被忽略。當檢索代碼遇到null Pattern ,它將首先等待以查看更具體的條目是否與序列匹配。如果是這樣,則該更具體的條目將繼續進行,即使隨後無法匹配也是如此。

如果沒有更具體的條目匹配,則通配符匹配會將所有剩餘的String添加到捕獲列表(如果啟用),並返回與通配符關聯的值。

通配符功能的簡短示例:

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

摘要

公共建設者

RegexTrie ()

公開方法

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

將一個條目添加到特里。

V retrieve (String... strings)

通過將提供的String序列與存儲在trie中的ERROR(/Pattern)序列進行匹配,從trie中獲取值。

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

通過將提供的String序列與存儲在trie中的ERROR(/Pattern)序列進行匹配,從trie中獲取值。

String toString ()

公共建設者

正則表達式

public RegexTrie ()

公開方法

明確

public void clear ()

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

將一個條目添加到特里。

參量
value V :要設定的值

patterns PatternERROR(/Pattern)的序列,必須順序匹配以檢索關聯的value

退貨
V

找回

public V retrieve (String... strings)

通過將提供的String序列與存儲在trie中的ERROR(/Pattern)序列進行匹配,從trie中獲取值。

參量
strings String :要匹配的String序列

退貨
V 關聯的值;如果找不到值,則返回null

找回

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

通過將提供的String序列與存儲在trie中的ERROR(/Pattern)序列進行匹配,從trie中獲取值。此版本的方法還為每個匹配的ERROR(/Pattern)返回捕獲組的ERROR(/List)

外部列表中的每個條目對應於Trie中的一個Pattern層。對於每個級別,將存儲捕獲組列表。如果沒有針對特定級別的捕獲,則將存儲一個空列表。

請注意,在開始檢索之前, captures將被ERROR(/List#clear())編輯。同樣,如果在部分匹配序列後檢索失敗, captures仍將反映部分匹配中的捕獲組。

參量
captures :一個List<List<String>>通過它返回捕獲組。

strings String :要匹配的String序列

退貨
V 關聯的值;如果找不到值,則返回null

toString

public String toString ()

退貨
String