मॉड्यूल पाठ (2/4)
मूल प्रतिस्थापन और `$1`
जावास्क्रिप्ट में, String.prototype.replace(regex, replacement) एक कार्य करता है
पैटर्न मिलान करता है और प्रत्येक मिलान को दिए गए स्ट्रिंग से बदल देता है। g के साथ
ध्वज यह सभी मिलानों को प्रतिस्थापित करता है; इसके बिना, केवल पहला. replaceAll
वैश्विक व्यवहार को बाध्य करता है (और रेगेक्स पर g ध्वज की आवश्यकता होती है)।
'ciao mondo'.replace(/o/g, '0'); // "cia0 m0nd0"
'Mario Rossi'.replace(/(\w+) (\w+)/, '$2 $1'); // "Rossi Mario"प्रतिस्थापन स्ट्रिंग में संदर्भ
प्रतिस्थापन स्ट्रिंग के अंदर, ये विशेष हैं:
$1,$2, \u2026 -- रेगेक्स के क्रमांकित समूह का बैकरेफ़रेंस।$<name>-- नामित समूह का पिछला संदर्भ।$&-- संपूर्ण मैच।- `$`` -- text before the match.
$'-- text after the match.$$-- a single literal$।
const data = '2024-03-15';
data.replace(/(\d{4})-(\d{2})-(\d{2})/, '$3/$2/$1');
// "15/03/2024"आदेश को उलट कर दिनांक को पुन: स्वरूपित करें। रेगेक्स में 3 समूह हैं, और में
प्रतिस्थापन स्ट्रिंग में आप उन्हें $1, $2, $3 के रूप में संदर्भित करते हैं।
प्रतिस्थापन में विशेष सन्दर्भ
$1 और $2 के अलावा, आप संपूर्ण मिलान किए गए टेक्स्ट को सम्मिलित करने के लिए $& का उपयोग कर सकते हैं, इसके बाद आने वाले सभी टेक्स्ट के लिए $ for all text preceding the match, and$'` का उपयोग कर सकते हैं। यह जेएस कोड लिखे बिना भी समृद्ध प्रतिस्थापन की अनुमति देता है।
इसे अजमाएं
तीन समूहों (वर्ष, माह, दिन) के साथ YYYY-MM-DD प्रारूप में प्रत्येक तिथि खोजें। इस तरह आप DD/MM/YYYY प्राप्त करने के लिए रिप्लेस का उपयोग कर सकते हैं।
संकेत दिखाएँ
(...) के साथ कैप्चर किए गए तीन समूहों के अंदर \\d+ को \\d{4}, \\d{2}, \\d{2} से बदलें।
3 प्रयासों के बाद समाधान उपलब्ध है
व्यायाम की समीक्षा करें
'फर्स्ट लास्ट' को दो नामित समूहों `nome` और `cognome` के रूप में खोजें, ताकि आप `$<cognome>, $<nome>` का उपयोग करके इसे `cognome, nome` के रूप में फिर से लिख सकें।
संकेत दिखाएँ
(?<nome>\\w+) और (?<cognome>\\w+) को \\s+ से अलग करके उपयोग करें।
3 प्रयासों के बाद समाधान उपलब्ध है
अतिरिक्त चुनौती
Create a capture pattern to reverse the order of first and last name from `Lastname, Firstname` format to `Firstname Lastname`.
संकेत दिखाएँ
Use two capture groups for last and first name; the replacement will be performed via $2 $1.
3 प्रयासों के बाद समाधान उपलब्ध है