जावास्क्रिप्ट रेगेक्सप में मनमाना समूहों को कैप्चर करना
जावास्क्रिप्ट नियमित अभिव्यक्तियों में कैप्चरिंग समूहों का उपयोग करते समय, सीमाओं को समझना आवश्यक है। डिफ़ॉल्ट रूप से, दोहराए गए समूह का केवल अंतिम कैप्चर रखा जाता है, भले ही समूह नेस्टेड हो।
उदाहरण: नेस्टेड कैप्चर ग्रुप
निम्न नियमित अभिव्यक्ति पर विचार करें:
/^(\s*\w ) $/
अपेक्षित आउटपुट:
["foo bar baz", "foo", " bar", " baz"]
वास्तविक आउटपुट:
["foo bar baz", " baz"]
इस मामले में, केवल अंतिम कैप्चर किया गया समूह, " baz", वापस किया जाता है। ऐसा इसलिए है क्योंकि जावास्क्रिप्ट प्रत्येक दोहराए गए समूह के लिए केवल अंतिम कैप्चर को बरकरार रखता है।
डिलीमीटर पर विभाजित करें: यदि संभव हो, तो वांछित को अलग करने के लिए स्ट्रिंग विभाजन का उपयोग करें खंड।
Exec लूप और विभाजन:इस उदाहरण में, नेस्टेड समूह को समूह 1 के रूप में कैप्चर किया जाता है, जिसे बाद में अर्धविराम सीमांकक पर विभाजित किया जाता है।
संबंधित प्रश्न
var text = "a;b;<c;d;e;f>;g;h;i;<no no no>;j;k;<xx;yy;zz>"; var r = /<(\w (;\w )*)>/g; var match; while ((match = r.exec(text)) != null) { print(match[1].split(";")); } // Output: // ["c", "d", "e", "f"] // ["xx", "yy", "zz"]
आप जावास्क्रिप्ट रेगेक्स में मेल खाने वाले समूहों तक कैसे पहुंचते हैं?
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3