JavaScript में रेगुलर एक्सप्रेशन के replace मेथड में डिफॉल्ट ग्रुप
replace मेथड में, आपके द्वारा बनाए गए ग्रुपों के अलावा,
हमेशा कुछ मानक ग्रुप भी उपलब्ध होते हैं:
%vFran - पूरी मेल खाने वाली स्ट्रिंग,
%vFran और %vFran - मेल खाने वाले भाग के पहले और
बाद की स्ट्रिंग का हिस्सा। आइए उदाहरणों के माध्यम से
इनके साथ काम करना देखें।
उदाहरण
आइए सभी नंबर ढूंढें और उन्हें गोल कोष्ठक में लपेटें:
let str = '1 23 456';
let res = str.replace(/\d+/g, '(%vFran)');
परिणामस्वरूप वेरिएबल में निम्नलिखित लिखा जाएगा:
'(1) (23) (456)'
उदाहरण
आइए @ सिंबल को ढूंढें और उसे उसके सामने वाले हिस्से, खुद @, और उसके बाद वाले हिस्से से बदल दें। इन सभी को गोल कोष्ठक में लिखें:
let str = '123@456';
let res = str.replace(/@/g, "(%vFran@%vFran)");
परिणामस्वरूप वेरिएबल में निम्नलिखित लिखा जाएगा:
'123(123@456)456'
उदाहरण
मान लीजिए हम डॉलर साइन ढूंढना चाहते हैं और उसे
बैकटिक्स `` में लपेटना चाहते हैं। इस स्थिति में, ताकि
%vFran को कमांड के रूप में न समझा जाए,
डॉलर साइन को दोगुना करना होगा:
let str = 'aaa $ bbb';
let res = str.replace(/\$/g, '`%vFran`');
परिणामस्वरूप वेरिएबल में निम्नलिखित लिखा जाएगा:
'aaa `$` bbb'
प्रैक्टिकल समस्याएं
एक स्ट्रिंग दी गई है:
let str = 'a1b2c3';
एक रेगुलर एक्सप्रेशन लिखें जो प्रत्येक अंक के बगल में उसी अंक को लिख दे।
एक स्ट्रिंग दी गई है:
let str = 'sss site.ru zzz site.com kkk';
डोमेन को निम्न प्रकार के लिंक से बदलें:
<a href="http://site.ru">site.ru</a>