जावास्क्रिप्ट रेगुलर एक्सप्रेशन में 'या' कमांड
इस पाठ में हम कमांड
'|' को समझेंगे, जो कमांड [ ] की तुलना में
'या' का अधिक शक्तिशाली संस्करण है।
यह कमांड रेगुलर एक्सप्रेशन को कई भागों में
विभाजित करने की अनुमति देती है।
इस मामले में, मेल खाने वाला या तो रेगुलर एक्सप्रेशन के एक
भाग के अंतर्गत आ सकता है, या दूसरे के अंतर्गत। आइए
उदाहरणों से समझते हैं।
उदाहरण
इस उदाहरण में, खोज पैटर्न इस प्रकार है: तीन
अक्षर 'a' या तीन अक्षर 'b':
let str = 'aaa bbb abb';
let res = str.replace(/a{3}|b{3}/g, '!');
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'! ! abb'
उदाहरण
इस उदाहरण में, खोज पैटर्न इस प्रकार है: तीन
अक्षर 'a' या 1 और अधिक
अक्षर 'b':
let str = 'aaa bbb bbbb bbbbb axx';
let res = str.replace(/a{3}|b+/g, '!');
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'! ! ! ! axx'
उदाहरण
इस उदाहरण में, खोज पैटर्न इस प्रकार है: एक या अधिक अक्षर या तीन अंक:
let str = 'a ab abc 1 12 123';
let res = str.replace(/[a-z]+|\d{3}/g, '!');
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'! ! ! 1 12 !'
उदाहरण
वर्टिकल बार रेगुलर एक्सप्रेशन को दो भागों में नहीं, बल्कि किसी भी数量的 भागों में विभाजित कर सकती है:
let str = 'aaa bbb ccc ddd';
let res = str.replace(/a+|b+|c+/g, '!');
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'! ! ! ddd'
उदाहरण
यदि वर्टिकल बार गोल कोष्ठकों के अंदर है,
तो 'या' केवल उन कोष्ठकों के अंदर ही
काम करती है।
उदाहरण के लिए, आइए निम्नलिखित पैटर्न के अनुसार स्ट्रिंग्स ढूंढें: शुरुआत में या तो 'a',
या 'b' एक या अधिक बार है, और उसके बाद
दो अक्षर 'x':
let str = 'axx bxx bbxx exx';
let res = str.replace(/(a|b+)xx/g, '!');
परिणामस्वरूप, वेरिएबल में निम्नलिखित लिखा जाएगा:
'! ! ! exx'
व्यावहारिक समस्याएं
एक स्ट्रिंग दी गई है:
let str = 'aeeea aeea aea axa axxa axxxa';
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स
को इस पैटर्न के अनुसार ढूंढे: किनारों पर अक्षर 'a' हैं,
और उनके बीच - या तो अक्षर 'e' कोई
संख्या में या अक्षर 'x' कोई
संख्या में।
एक स्ट्रिंग दी गई है:
let str = 'aeeea aeea aea axa axxa axxxa';
एक रेगुलर एक्सप्रेशन लिखें जो स्ट्रिंग्स
को इस पैटर्न के अनुसार ढूंढे: किनारों पर अक्षर 'a' हैं,
और उनके बीच - या तो अक्षर 'e' दो बार
या अक्षर 'x' कोई संख्या में।