रेगेक्सट्री

public class RegexTrie
extends Object

java.lang.ऑब्जेक्ट
com.android.tradefed.util.RegexTree<V>


रेगेक्सट्री एक ट्राई है जहां प्रत्येक संग्रहित कुंजी का खंड एक रेगेक्स ERROR(/Pattern) है। इस प्रकार, पूर्ण संग्रहित कुंजी एक List&lt;Pattern&gt; है एक List&lt;String&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) retrieve ( captures, String... strings)

String एस के दिए गए अनुक्रम को ट्राई में संग्रहीत ERROR(/Pattern) एस के अनुक्रम से मिलान करके, ट्राई से एक मान प्राप्त करें।

String toString ()

सार्वजनिक निर्माणकर्ता

रेगेक्सट्री

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)

String एस के दिए गए अनुक्रम को ट्राई में संग्रहीत ERROR(/Pattern) एस के अनुक्रम से मिलान करके, ट्राई से एक मान प्राप्त करें।

पैरामीटर
strings String : मिलान करने के लिए String का एक क्रम

रिटर्न
V यदि कोई मूल्य नहीं मिला तो संबंधित मूल्य, या null

पुनः प्राप्त करना

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

String एस के दिए गए अनुक्रम को ट्राई में संग्रहीत ERROR(/Pattern) एस के अनुक्रम से मिलान करके, ट्राई से एक मान प्राप्त करें। विधि का यह संस्करण मिलान किए गए प्रत्येक ERROR(/Pattern) के लिए कैप्चर समूहों की एक ERROR(/List) भी लौटाता है।

बाहरी सूची में प्रत्येक प्रविष्टि त्रि में Pattern के एक स्तर से मेल खाती है। प्रत्येक स्तर के लिए, कैप्चर समूहों की सूची संग्रहीत की जाएगी। यदि किसी विशेष स्तर के लिए कोई कैप्चर नहीं थे, तो एक खाली सूची संग्रहीत की जाएगी।

ध्यान दें कि पुनर्प्राप्ति शुरू होने से पहले captures ERROR(/List#clear()) एड होंगे। इसके अलावा, यदि मिलानों के आंशिक अनुक्रम के बाद पुनर्प्राप्ति विफल हो जाती है, captures अभी भी आंशिक मिलान से कैप्चर समूहों को प्रतिबिंबित करेगा।

पैरामीटर
captures : एक List<List<String>> जिसके माध्यम से कैप्चर ग्रुप वापस किये जायेंगे।

strings String : मिलान करने के लिए String का एक क्रम

रिटर्न
V यदि कोई मूल्य नहीं मिला तो संबंधित मूल्य, या null

स्ट्रिंग

public String toString ()

रिटर्न
String