RegexTrie

public class RegexTrie
extends Object

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


RegexTrie는 키의 각 저장된 세그먼트가 정규식 ERROR(/Pattern)인 트라이입니다. 따라서 전체 저장된 키는 표준 trie에서와 같이 List&lt;String&gt;가 아니라 List&lt;Pattern&gt;입니다. retrieve(String) 메서드는 표준 트라이와 같이 점별 등식이 아닌 점별로 Pattern와 일치합니다. 이로 인해 대규모 데이터 세트의 경우 성능이 저하될 수 있습니다.

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 시퀀스를 트리에 저장된 ERROR(/Pattern) 시퀀스와 일치시켜 트리에서 값을 가져옵니다.

V retrieve( captures, String... strings)

제공된 String 시퀀스를 트리에 저장된 ERROR(/Pattern) 시퀀스와 일치시켜 트리에서 값을 가져옵니다.

String toString()

공개 생성자

RegexTrie

public RegexTrie ()

공개 메서드

지우기

public void clear ()

CANNOT TRANSLATE

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

트리에 항목을 추가합니다.

매개변수
value V: 설정할 값

patterns Pattern: 연결된 value를 가져오기 위해 순차적으로 일치시켜야 하는 ERROR(/Pattern)의 시퀀스입니다.

반환 값
V

가져오기

public V retrieve (String... strings)

제공된 String 시퀀스를 트리에 저장된 ERROR(/Pattern) 시퀀스와 일치시켜 트리에서 값을 가져옵니다.

매개변수
strings String: 일치시킬 String 시퀀스

반환 값
V 연결된 값 또는 값을 찾을 수 없는 경우 null

가져오기

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

제공된 String 시퀀스를 트리에 저장된 ERROR(/Pattern) 시퀀스와 일치시켜 트리에서 값을 가져옵니다. 이 버전의 메서드는 일치된 각 ERROR(/Pattern)에 관한 캡처 그룹의 ERROR(/List)도 반환합니다.

외부 List의 각 항목은 트리의 Pattern 하나의 수준에 해당합니다. 각 수준에 캡처 그룹 목록이 저장됩니다. 특정 수준에 대한 캡처가 없으면 빈 목록이 저장됩니다.

검색이 시작되기 전에 capturesERROR(/List#clear())됩니다. 또한 부분 일치 시퀀스 후에 검색에 실패하더라도 captures에는 부분 일치의 캡처 그룹이 계속 반영됩니다.

매개변수
captures : 캡처 그룹이 반환되는 List<List<String>>입니다.

strings String: 일치시킬 String의 시퀀스입니다.

반환 값
V 연결된 값 또는 값을 찾을 수 없는 경우 null

toString

public String toString ()

반환 값
String