सैंपल का इस्तेमाल
REGEXP_REPLACE(कैंपेन , '(बिक्री):(गर्मी का मौसम)', '\\2 \\1')
सिंटैक्स
REGEXP_REPLACE(X, regular_expression, replacement)
पैरामीटर
X
- फ़ील्ड या एक्सप्रेशन, जिसमें एक फ़ील्ड होता है.regular_expression
- ऐसा रेगुलर एक्सप्रेशन जोfield_expression
के किसी हिस्से से मेल खाता है.replacement
- वह टेक्स्ट जिससेfield_expression
के मेल खाने वाले हिस्से को बदला जाता है.
एक्सप्रेशन से मिलने वाला नतीजा
REGEXP_REPLACE फ़ंक्शन से text
की वैल्यू मिलती हैं.
नोट
REGEXP_REPLACE
से मिलने वाले टेक्स्ट में, X
की सभी सबस्ट्रिंग को replacement
से बदला जाता है. ये सभी ऐसी सबस्ट्रिंग होती हैं जो regular_expression
से मेल खाती हैं.
regular_expression
पैटर्न के आगे ब्रैकेट में मौजूद टेक्स्ट से मेल खाने वाला टेक्स्ट इंसर्ट करने के लिए, replacement
आर्ग्युमेंट में बैकस्लैश्ड-एस्केप्ड डिजिट (\1 से 9) भी इस्तेमाल किए जा सकते हैं. मेल खाने वाले पूरे टेक्स्ट को रेफ़र करने के लिए \0 का इस्तेमाल करें.
अपने रेगुलर एक्सप्रेशन में बैकस्लैश जोड़ने के लिए, पहले आपको उसे एस्केप करना होगा. उदाहरण के लिए, SELECT REGEXP_REPLACE('abc', 'b(.)', 'X\\1');
से, नतीजे के तौर पर aXc
मिलता है. एस्केपिंग की एक लेयर हटाने के लिए, राॅ स्ट्रिंग का इस्तेमाल भी किया जा सकता है, जैसे कि SELECT REGEXP_REPLACE('abc', 'b(.)', r'X\1');
.
REGEXP_REPLACE
फ़ंक्शन, सिर्फ़ उन मैच को बदलता है जो ओवरलैप नहीं होते. उदाहरण के लिए, banana
में ana
को बदलने से सिर्फ़ एक बदलाव होता है, दो नहीं.
उदाहरण
फ़ॉर्मूला का उदाहरण | इनपुट | आउटपुट |
REGEXP_REPLACE(LOWER(कैंपेन), ".bc123", "समर सेल") |
abc123 ABC123 BBC123 |
समर सेल |
REGEXP_REPLACE(कैंपेन , '(.*):(.*)', '\\2 \\1') |
बिक्री:गर्मियों की बिक्री:सर्दियों की |
समर सेल विंटर सेल |