पायथन RegEx

RegEx या रेगुलर एक्सप्रेशन (RegEx) खोज पैटर्न बनाने के लिए अक्षर श्रृंखला है

RegEx या रेगुलर एक्सप्रेशन (RegEx) का उपयोग किया जाता है कि वह इंटरनेट के विन्यास अनुवाद चेक करता है कि वह निर्दिष्ट खोज पैटर्न को शामिल करता है या नहीं

RegEx मॉड्यूल

Python एक नाम देता है re के भीतरी पैकेज, जो रेगुएक्स्प्रेसियन का शोध करने के लिए उपयोग किया जा सकता है।

आयात re मूलभूत फ़ाइल

import re

Python में RegEx

आयात re मूलभूत फ़ाइल के बाद, हम रेगुएक्स्प्रेसियन का उपयोग करने लगते हैं

इंस्टांस

फ़ाइल को मेल करने के लिए देखने के लिए फ़ाइल को "China" से शुरू होता है और "country" से समाप्त होता है

import re
txt = "China is a great country"
x = re.search("^China.*country$", txt)

चलाने वाला इंस्टांस

RegEx तत्व

re मूलभूत फ़ाइल के एक समूह तत्व फ़ाइल, जो हमें फ़ाइल को मेल करने के लिए अनुवाद करता है:

तत्व वर्णन
findall सभी मेल के लिए लिस्ट बदलता है
search यदि फ़ाइल में किसी स्थान पर मेल होता है, तो Match ऑब्जेक्ट बदलता है
split फ़ाइल को मेल की प्रत्येक बार विभाजित करने के लिए लिस्ट बदलता है
sub एक या अधिक मेल को फ़ाइल के स्थान पर बदलने के लिए उपयोग किया जाता है

मेटाचर

मेटाचर विशेष अर्थ रखने वाले अक्षर हैं:

अक्षर वर्णन उदाहरण TIY
[] एक समूह अक्षर "[a-m]" सिफारिश की जाती है
\ विशेष अनुक्रम दिखाता है (विशेष अक्षरों के लिए भी उपयोग किया जा सकता है) "\d" सिफारिश की जाती है
. कोई अक्षर (लिनेंफ़ाइल छोड़कर) या तो आता है या नहीं "he..o" सिफारिश की जाती है
^ शुरू होता है "^hello" सिफारिश की जाती है
$ समाप्त होता है "world$" सिफारिश की जाती है
* शून्य बार या अधिक प्रदर्शन "aix*" सिफारिश की जाती है
+ एक बार या अधिक प्रदर्शन "aix+" सिफारिश की जाती है
{} सटीक निर्दिष्ट प्रदर्शन बार "al{2}" सिफारिश की जाती है
| दोनों में से कोई "falls|stays" सिफारिश की जाती है
() कैच और ग्रुपिंग

विशेष अनुक्रम

विशेष अनुक्रम का अर्थ है \ के बाद नीचे दिए गए पट्टी में किसी एक के साथ, विशेष अर्थ रखता है:

अक्षर वर्णन उदाहरण TIY
\A यदि निर्दिष्ट अक्षर फ़ाइल के शुरूआत पर है, तो मेल है "\AThe" सिफारिश की जाती है
\b निर्दिष्ट अक्षर वर्ड के शुरूआत में या अंत में है के मेल है r"\bain"
r"ain\b"
सिफारिश की जाती है
सिफारिश की जाती है
\B निर्दिष्ट अक्षर के मेल है, लेकिन वह वर्ड के शुरूआत में (या अंत में) नहीं है r"\Bain"
r"ain\B"
सिफारिश की जाती है
सिफारिश की जाती है
\d फ़ाइल कोई नंबर है (0-9) के मेल है "\d" सिफारिश की जाती है
\D फ़ाइल कोई नंबर नहीं है के मेल है "\D" सिफारिश की जाती है
\s फ़ाइल कोई खाली अक्षर है के मेल है "\s" सिफारिश की जाती है
\S फ़ाइल कोई खाली अक्षर नहीं है के मेल है "\S" सिफारिश की जाती है
\w एक मेल है, जिसमें फ़ाइल कोई वर्ड अक्षर है
द्वारा (a से Z तक के अक्षर, 0 से 9 तक के नंबर और अनुच्छेद _ चरित्र)
"\w" सिफारिश की जाती है
\W एक मेल है, जिसमें फ़ाइल कोई वर्ड अक्षर नहीं है "\W" सिफारिश की जाती है
\Z यदि निर्दिष्ट अक्षर फ़ाइल में अंतिम स्थान पर है, तो मेल है "Spain\Z" सिफारिश की जाती है

सेट (Set)

समूह (Set) एक जोड़ी बगुला है}} [] में एक समूह अक्षर, जो विशेष अर्थ रखते हैं:

संग्रह वर्णन सिफारिश की जाती है
[arn] किसी भी निर्दिष्ट अक्षर (a, r या n) में से एक के मेल को वापस करें: सिफारिश की जाती है
[a-n] अक्षर श्रेणी a और n के बीच किसी भी छोटे अक्षर के मेल को वापस करें: सिफारिश की जाती है
[^arn] a, r और n के अलावा किसी भी अक्षर के मेल को वापस करें: सिफारिश की जाती है
[0123] किसी भी निर्दिष्ट अंक (0, 1, 2 या 3) के मेल को वापस करें: सिफारिश की जाती है
[0-9] 0 से 9 के बीच किसी भी अंक के मेल को वापस करें: सिफारिश की जाती है
[0-5][0-9] 0 से 9 के बीच किसी भी अंक के मेल को वापस करें: सिफारिश की जाती है
[a-zA-Z] अक्षर श्रेणी a और z के बीच किसी भी अक्षर के मेल को वापस करें, छोटे या बड़े: सिफारिश की जाती है
[+] सेट में, +, *, ., |, (), $, {} कोई विशेष अर्थ नहीं है, इसलिए [+] का अर्थ है: वाक्य में किसी भी + अक्षर के मेल: सिफारिश की जाती है

findall() फ़ंक्शन

findall() फ़ंक्शन सभी मेल की सूची वापस करता है।

इंस्टांस

सभी मेल की सूची को प्रिंट करें:

import re
str = "China is a great country"
x = re.findall("a", str)
print(x)

चलाने वाला इंस्टांस

यह सूची मेल होने की क्रमिक व्यवस्था में है।

अगर मेल नहीं मिला, तो खाली सूची वापस करें:

इंस्टांस

अगर मेल नहीं मिला, तो खाली सूची वापस करें:

import re
str = "China is a great country"
x = re.findall("USA", str)
print(x)

चलाने वाला इंस्टांस

search() फ़ंक्शन

search() फ़ंक्शन स्ट्रिंग में मेल करता है, अगर मेल मिला है तो Match ऑब्जेक्ट वापस करता है।

अगर कई मेल हो, तो केवल पहला मेल वापस करें:

इंस्टांस

स्ट्रिंग में पहली खाली गढ़ को खोजें:

import re
str = "China is a great country"
x = re.search("\s", str)
print("The first white-space character is located in position:", x.start())

चलाने वाला इंस्टांस

अगर मेल नहीं मिला, तो वापसी मान: शून्य:

इंस्टांस

मेल न वापस करने वाली तलाश करें:

import re
str = "China is a great country"
x = re.search("USA", str)
print(x)

चलाने वाला इंस्टांस

split() फ़ंक्शन

split() फ़ंक्शन एक सूची वापस करता है जिसमें स्ट्रिंग हर बार मेल होने पर विभाजित होती है:

इंस्टांस

हर खाली गढ़ के साथ स्ट्रिंग को विभाजित करें:

import re
str = "China is a great country"
x = re.split("\s", str)
print(x)

चलाने वाला इंस्टांस

आप ऑब्जेक्ट को देखा सकते हैं maxsplit पैरामीटर के द्वारा बार नियंत्रित करें:

इंस्टांस

केवल पहली बार ही स्ट्रिंग को विभाजित करें:

import re
str = "China is a great country"
x = re.split("\s", str, 1)
print(x)

चलाने वाला इंस्टांस

sub() फ़ंक्शन

sub() फ़ंक्शन में मेल होने वाले टेक्स्ट को आपके चुने हुए टेक्स्ट से बदल देता है:

इंस्टांस

अंक 9 के साथ हर खाली गढ़ बदलें:

import re
str = "China is a great country"
x = re.sub("\s", "9", str)
print(x)

चलाने वाला इंस्टांस

आप ऑब्जेक्ट को देखा सकते हैं count पैरामीटर के द्वारा बदले जाने की बारंबारता को नियंत्रित करें

इंस्टांस

पहले दो बार बदलें

import re
str = "China is a great country"
x = re.sub("\s", "9", str, 2)
print(x)

चलाने वाला इंस्टांस

Match ऑब्जेक्ट

Match ऑब्जेक्ट खोज और परिणाम के बारे में जानकारी देने वाला ऑब्जेक्ट है

टिप्पणी:अगर कोई मेल नहीं होता है, तो वापसी मान शून्यइसके बजाय Match ऑब्जेक्ट

इंस्टांस

खोज करने वाला फ़ल एक Match ऑब्जेक्ट वापस करेगा

import re
str = "China is a great country"
x = re.search("a", str)
print(x) # ऑब्जेक्ट को छापेगा

चलाने वाला इंस्टांस

Match ऑब्जेक्ट खोज और परिणाम के बारे में जानकारी देने वाली गुण और विधियाँ प्रदान करता है

  • span() वापसी का टुपल में मेल के शुरू और समाप्त स्थान शामिल है
  • .string फ़ंक्शन में दाखिल की गई स्ट्रिंग को वापस करें
  • group() मेल हुए स्ट्रिंग के हिस्से को वापस करें

इंस्टांस

पहले मेल हुए स्थान को छापें (शुरू और समाप्त स्थान)

बड़े "C" चिह्न से शुरू होने वाले किसी भी शब्द को खोजें

import re
str = "China is a great country"
x = re.search(r"\bC\w+", str)
print(x.span())

चलाने वाला इंस्टांस

इंस्टांस

फ़ंक्शन में दाखिल की गई स्ट्रिंग को छापें

import re
str = "China is a great country"
x = re.search(r"\bC\w+", str)
print(x.string)

चलाने वाला इंस्टांस

इंस्टांस

मेल हुए स्ट्रिंग के हिस्से को छापें

बड़े "C" चिह्न से शुरू होने वाले किसी भी शब्द को खोजें

import re
str = "China is a great country"
x = re.search(r"\bC\w+", str)
print(x.group())

चलाने वाला इंस्टांस

टिप्पणी:अगर कोई मेल नहीं होता है, तो वापसी मान शून्यइसके बजाय Match ऑब्जेक्ट