एसक्यूएल REGEXP_REPLACE

Esakyu Ela Regexp Replace



टेक्स्ट डेटा या स्ट्रिंग्स, जैसा कि डेवलपर्स उन्हें कहते हैं, किसी भी कार्यात्मक कार्यक्रम के लिए एक प्रमुख बिल्डिंग ब्लॉक है। जब डेटा संग्रहीत करने की बात आती है तो यह अलग नहीं है। लगभग सभी डेटाबेस में कुछ प्रकार की टेक्स्ट जानकारी होती है जैसे नाम, लॉग इत्यादि।

जैसे, स्ट्रिंग हेरफेर एक सामान्य कार्य है जिसमें स्ट्रिंग मानों को एक विशिष्ट प्रारूप में हेरफेर करना और बदलना शामिल है।

SQL में स्ट्रिंग ऑपरेशंस से संबंधित सबसे शक्तिशाली फ़ंक्शन में से एक REGEXP_REPLACE() फ़ंक्शन है। यह फ़ंक्शन हमें नियमित अभिव्यक्ति-आधारित खोज और प्रतिस्थापन करने की अनुमति देता है। यदि आप नियमित अभिव्यक्ति से परिचित हैं, तो आप जानते हैं कि यह फ़ंक्शन कितना शक्तिशाली हो सकता है।







इस ट्यूटोरियल में, हम सीखेंगे कि हम SQL डेटाबेस में स्ट्रिंग्स को खोजने और बदलने के लिए इस फ़ंक्शन का उपयोग कैसे कर सकते हैं।



एसक्यूएल REGEXP_REPLACE

SQL REGEXP_REPLACE() एक फ़ंक्शन है जो हमें किसी दिए गए स्ट्रिंग के भीतर नियमित अभिव्यक्ति-आधारित पैटर्न मिलान और प्रतिस्थापन करने की अनुमति देता है।



रेगुलर एक्सप्रेशन, या रेगेक्स, एक सेट पैटर्न और प्लेसहोल्डर है जो हमें एक विशिष्ट पैटर्न का पालन करने वाले स्ट्रिंग्स या सबस्ट्रिंग से मिलान और हेरफेर करने की अनुमति देता है।





यह ध्यान रखना अच्छा है कि प्रत्येक डेटाबेस इंजन फ़ंक्शन के सिंटैक्स और कार्यक्षमता को थोड़ा लागू कर सकता है।

हालाँकि, हम इसके वाक्यविन्यास को इस प्रकार व्यक्त कर सकते हैं:



REGEXP_REPLACE(इनपुट_स्ट्रिंग, पैटर्न, प्रतिस्थापन [, झंडे])

फ़ंक्शन पैरामीटर निम्नलिखित में व्यक्त किए गए हैं:

  1. इनपुट_स्ट्रिंग - यह उस स्ट्रिंग को निर्दिष्ट करता है जिसके भीतर हम खोजना और बदलना चाहते हैं।
  2. पैटर्न - यह नियमित अभिव्यक्ति पैटर्न निर्दिष्ट करता है जिसे हम इनपुट स्ट्रिंग के भीतर मिलान करना चाहते हैं।
  3. प्रतिस्थापन - यह उस स्ट्रिंग को निर्दिष्ट करता है जो मिलान किए गए सबस्ट्रिंग को प्रतिस्थापित करेगा।
  4. झंडे - यह वैकल्पिक झंडे का एक सेट है जो नियमित अभिव्यक्ति की कार्यक्षमता को संशोधित करने में मदद कर सकता है। उदाहरण के लिए, हम वैश्विक खोज, केस-असंवेदनशील मिलान आदि को सक्षम कर सकते हैं। यह सुविधा डेटाबेस इंजन के आधार पर भिन्न होती है।

उदाहरण:

यह फ़ंक्शन कैसे काम करता है इसे बेहतर ढंग से समझने के लिए, आइए इसका उपयोग करने के कुछ उदाहरण देखें।

उदाहरण 1: मूल उपयोग

मान लीजिए कि हमारे पास एक तालिका है जिसमें कर्मचारी की जानकारी शामिल है जैसा कि निम्नलिखित उदाहरण आउटपुट में दिखाया गया है:

एक ऐसे मामले पर विचार करें जहां हम 'चार्ली' स्ट्रिंग की घटना को 'मैथ्यू' से बदलना चाहते हैं। हम क्वेरी का उपयोग इस प्रकार कर सकते हैं:

चुनना

REGEXP_REPLACE(प्रथम_नाम, 'चार्ली', 'मैथ्यू') नए_नाम के रूप में

से

कर्मचारी;

दिया गया उदाहरण 'first_name' कॉलम से 'चार्ली' स्ट्रिंग को खोजने और इसे 'मैथ्यू' से बदलने के लिए एक बुनियादी खोज और प्रतिस्थापन को दर्शाता है।

आउटपुट:

उदाहरण 2: केस असंवेदनशील प्रतिस्थापन

कुछ मामलों में, आप केस असंवेदनशील खोज करना चाह सकते हैं। इसका मतलब यह है कि फ़ंक्शन केवल स्ट्रिंग सामग्री को देखेगा, अल्फ़ान्यूमेरिक अक्षरों के वास्तविक आवरण को नहीं।

ऐसे मामले में, हम 'i' को फ़ंक्शन फ़्लैग के रूप में निम्नानुसार उपयोग करते हैं:

संशोधित अनुसार REGEXP_REPLACE(उत्पाद_विवरण, सैमसंग, एप्पल, 'i') चुनें

उत्पादों से;

ध्वज को 'i' पर सेट करके, फ़ंक्शन आवरण की परवाह किए बिना, 'सैमसंग' से मेल खाने वाले सभी शब्दों से मेल खाता है।

निष्कर्ष

इस उदाहरण में, हमने पता लगाया कि रेगुलर एक्सप्रेशन पैटर्न-आधारित खोज और प्रतिस्थापन करने के लिए REGEXP_REPLACE() फ़ंक्शन का उपयोग कैसे करें और उसके साथ कैसे काम करें।