Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

पायथन में रेगुलर एक्सप्रेशन बैक रेफरेंस कैसे काम करते हैं?

ग्रुपिंग

हम रेगुलर एक्सप्रेशन के किसी हिस्से को पैरेंथेसिस की जोड़ी में घेरकर ग्रुप करते हैं। इस तरह हम ऑपरेटर्स को एक सिंगल कैरेक्टर के बजाय ग्रुप पर लागू करते हैं।

कैप्चरिंग ग्रुप्स और बैकरेफरेंस

पैरेंथेसिस न केवल सब-एक्सप्रेशन को ग्रुप करते हैं बल्कि वे बैकरेफरेंस भी बनाते हैं। ग्रुप किए गए रेगुलर एक्सप्रेशन के हिस्से से मैच होने वाला स्ट्रिंग का भाग बैकरेफरेंस में स्टोर होता है। बैकरेफरेंस के उपयोग से हम रेगुलर एक्सप्रेशन के भागों का पुनः उपयोग करते हैं।

यदि सब-एक्सप्रेशन को पैरेंथेसिस में रखा जाता है, तो इसे \1 या $1 आदि से एक्सेस किया जा सकता है।

उदाहरण के लिए, रेगेक्स \b(\w+)\b\s+\1\b दोहराए गए शब्दों से मैच करता है, जैसे tahiti tahiti, क्योंकि (\w+) में पैरेंथेसिस एक शब्द को ग्रुप 1 में कैप्चर करते हैं फिर बैकरेफरेंस \1 उन कैरेक्टर्स से मैच करता है जो ग्रुप 1 द्वारा कैप्चर किए गए थे।

उदाहरण

import re
s = 'Tahiti Tahiti Atoll'
result = re.findall(r'\b(\w+)\b\s+\1\b', s)
print(result)

आउटपुट

यह आउटपुट देता है:

['Tahiti']
  1. - पायथन में रेगुलर एक्सप्रेशन का उपयोग करके सिंगल कैरेक्टर कैसे मैच करें?

    हम दिए गए स्ट्रिंग में पायथन रेगुलर एक्सप्रेशन का उपयोग करके किसी भी सिंगल कैरेक्टर को मैच और प्रिंट करने के लिए निम्नलिखित कोड का उपयोग करते हैं। यह दिए गए स्ट्रिंग में किसी भी सिंगल कैरेक्टर से मैच करता है। उदाहरण import re foo = https://www/twitter/index.php 403 result = re.findall(r., foo) prin

  1. - पायथन में रेगुलर एक्सप्रेशन का उपयोग करके केवल नॉन-डिजिट्स से कैसे मिलान करें?

    निम्न कोड पायथन रेगुलर एक्सप्रेशन का उपयोग करके दी गई स्ट्रिंग में केवल नॉन-डिजिट्स से मिलान करता है।उदाहरणimport re\nm = re.search(r\D+, 5Need47for Speed 2)\nprint(m)आउटपुट<_sre.SRE_Match object at 0x0000000004FE6648>निम्न कोड दी गई स्ट्रिंग में सभी नॉन-डिजिट्स ढूंढता है और उन्हें सूची के रूप

  1. - पायथन में रेगुलर एक्सप्रेशन मोडिफायर्स कैसे काम करते हैं?

    रेगुलर एक्सप्रेशन लिटरल्स में एक वैकल्पिक मोडिफायर शामिल हो सकता है जो मिलान के विभिन्न पहलुओं को नियंत्रित करता है। मोडिफायर्स को वैकल्पिक फ्लैग के रूप में निर्दिष्ट किया जाता है। आप एक्सक्लूसिव OR (|) का उपयोग करके कई मोडिफायर प्रदान कर सकते हैं, और इन्हें निम्न में से किसी एक द्वारा दर्शाया जा सक