RegexTrie
public
class
RegexTrie
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.RegexTrie<V> |
RegexTrie एक ट्राई है, जहां कुंजी का हर ERROR(/Pattern)
होता है. इसलिए, स्टैंडर्ड ट्राई में List<String>
के बजाय, पूरी List<Pattern>
होती है. ध्यान दें कि 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)
ट्राइ से कोई वैल्यू फ़ेच करें. इसके लिए, ट्राइ में सेव किए गए |
V
|
retrieve(
ट्राइ से कोई वैल्यू फ़ेच करें. इसके लिए, ट्राइ में सेव किए गए |
String
|
toString()
|
पब्लिक कंस्ट्रक्टर
RegexTrie
public RegexTrie ()
सार्वजनिक तरीके
मिटाएं
public void clear ()
रखें
public V put (V value, Pattern... patterns)
ट्राई में कोई एंट्री जोड़ें.
पैरामीटर | |
---|---|
value |
V : सेट की जाने वाली वैल्यू |
patterns |
Pattern : ERROR(/Pattern) का क्रम, जिसे क्रम से मैच करके, इससे जुड़े value को वापस पाया जा सकता है |
रिटर्न | |
---|---|
V |
वैल्यू पाएं
public V retrieve (String... strings)
ट्राइ से कोई वैल्यू फ़ेच करें. इसके लिए, ट्राइ में सेव किए गए ERROR(/Pattern)
के क्रम से, दिए गए String
के क्रम को मैच करें.
पैरामीटर | |
---|---|
strings |
String : मैच करने के लिए String का क्रम |
रिटर्न | |
---|---|
V |
उससे जुड़ी वैल्यू या कोई वैल्यू न मिलने पर null |
वैल्यू पाएं
public V retrieve (captures, String... strings)
ट्राइ से कोई वैल्यू फ़ेच करें. इसके लिए, ट्राइ में सेव किए गए ERROR(/Pattern)
के क्रम से, दिए गए String
के क्रम को मैच करें. इस तरीके के वर्शन में, मैच किए गए हर ERROR(/Pattern)
के लिए, कैप्चर ग्रुप का एक ERROR(/List)
भी दिखता है.
आउटर सूची में मौजूद हर एंट्री, ट्राइ में Pattern
के एक लेवल से मेल खाती है.
हर लेवल के लिए, कैप्चर ग्रुप की सूची सेव की जाएगी. अगर किसी लेवल के लिए कोई कैप्चर नहीं किया गया है, तो खाली सूची सेव की जाएगी.
ध्यान दें कि डेटा वापस पाने की प्रोसेस शुरू होने से पहले, captures
को ERROR(/List#clear())
कर दिया जाएगा.
इसके अलावा, अगर मैच के कुछ हिस्से के बाद डेटा वापस नहीं मिलता है, तो captures
अब भी मैच के कुछ हिस्से से कैप्चर ग्रुप दिखाएगा.
पैरामीटर | |
---|---|
captures |
: वह List<List<String>> जिसके ज़रिए कैप्चर ग्रुप दिखाए जाएंगे. |
strings |
String : मैच करने के लिए String का क्रम |
रिटर्न | |
---|---|
V |
उससे जुड़ी वैल्यू या कोई वैल्यू न मिलने पर null |
toString
public String toString ()
रिटर्न | |
---|---|
String |