TypeScript:
रेगुलर एक्सप्रेशन्स का उपयोग करना
कैसे:
आइए TypeScript में कूदें और देखें कि सामान्य कार्यों के लिए रेगेक्स का उपयोग कैसे किया जाता है।
// ईमेल पते के लिए एक रेगेक्स पैटर्न परिभाषित करें
const emailPattern = /\S+@\S+\.\S+/;
// जाँचें कि क्या एक स्ट्रिंग ईमेल पैटर्न से मेल खाती है
const email = "[email protected]";
console.log(emailPattern.test(email)); // आउटपुट: true
// एक स्ट्रिंग में अंकों को खोजना और बदलना
const replaceDigits = "Item 25 costs $30".replace(/\d+/g, '#');
console.log(replaceDigits); // आउटपुट: "Item # costs $#"
// कैप्चर ग्रुप्स का उपयोग करके एक स्ट्रिंग से विशिष्ट भागों को निकालना
const data = "April 10, 2021";
const datePattern = /(\w+) (\d+), (\d+)/;
const [, month, day, year] = datePattern.exec(data) || [];
console.log(month, day, year); // आउटपुट: "April" "10" "2021"
गहराई में
1950 के दशक में, गणितज्ञ स्टीफन क्लेन ने रेगुलर एक्सप्रेशन को एक मॉडल के रूप में वर्णित किया था जो नियमित भाषाओं को प्रस्तुत करता है, जो बाद में कंप्यूटर विज्ञान में आवश्यक बन गया। समय को आगे बढ़ाएं, रेगेक्स प्रोग्रामिंग में टेक्स्ट से निपटने के लिए सर्वव्यापी है।
जबकि रेगेक्स स्ट्रिंग ऑपरेशनों के लिए एक स्विस आर्मी नाइफ है, इसके विकल्पों के बिना नहीं हैं। कार्य की जटिलता के आधार पर, कभी-कभी स्ट्रिंग मेथड्स जैसे includes()
, startsWith()
, endsWith()
, या यहां तक कि एक लाइब्रेरी के साथ पार्सिंग बेहतर हो सकती है। उदाहरण के लिए, एक जटिल JSON स्ट्रिंग को रेगेक्स के साथ पार्स करना एक बुरा सपना हो सकता है—इसके बजाय एक JSON पार्सर का उपयोग करें।
कार्यान्वयन के संबंध में, जावास्क्रिप्ट और टाइपस्क्रिप्ट में रेगेक्स, ECMAScript भाषा विनिर्देशन पर आधारित है। इंजन, पैटर्नों का प्रभावी ढंग से मिलान करने के लिए आंतरिक रूप से स्थिति मशीनों का उपयोग करते हैं। यह ध्यान देने योग्य है कि रेगेक्स ऑपरेशन प्रदर्शन की दृष्टि से महंगे हो सकते हैं, विशेष रूप से खराब लिखित पैटर्नों के साथ—“विनाशकारी बैकट्रैकिंग” के लिए देखें।
और देखें
- रेगुलर एक्सप्रेशन पर MDN वेब डॉक्स: MDN रेगुलर एक्सप्रेशन
- रेगेक्स पैटर्न को परीक्षण और डिबग करने का उपकरण Regex101: Regex101
- गहरी समझ के लिए “मास्टरिंग रेगुलर एक्सप्रेशन” पुस्तक: O’Reilly