রেগুলার এক্সপ্রেশনে ক্যারেক্টার সেট ইনভার্টেশন
বর্গাকার ব্র্যাকেটের শুরুতে ক্যারেট '^' ব্যবহার করে
কাঙ্ক্ষিত জিনিসটি ইনভার্ট করা যায়। উদাহরণস্বরূপ, যদি [ab] কমান্ড
'a' বা 'b' অক্ষর খোঁজে, তাহলে
[^ab] কমান্ডটি 'a' এবং 'b'
বাদে সকল অক্ষর খুঁজে বের করবে।
উদাহরণ
এই উদাহরণে, সার্চ প্যাটার্নটি দেখতে এমন:
অক্ষর 'x', তারপর 'a' অক্ষর নয়,
'b' নয় এবং 'c' নয়,
তারপর অক্ষর 'z':
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
কোড এক্সিকিউট করার ফলাফল:
'xax xbx xcx !'
উদাহরণ
এই উদাহরণে, সার্চ প্যাটার্নটি দেখতে এমন:
অক্ষর 'x', তারপর ছোট ল্যাটিন অক্ষর নয়,
তারপর অক্ষর 'z':
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
কোড এক্সিকিউট করার ফলাফল:
'xaz xbz ! !'
ব্যবহারিক সমস্যা
একটি রেগুলার এক্সপ্রেশন লিখুন যা নিম্নলিখিত প্যাটার্ন অনুসারে স্ট্রিং খুঁজে পাবে:
অঙ্ক 1, তারপর 'e' এবং 'x'
নয়, অঙ্ক 2।
একটি রেগুলার এক্সপ্রেশন লিখুন যা নিম্নলিখিত প্যাটার্ন অনুসারে স্ট্রিং খুঁজে পাবে:
অক্ষর 'x', তারপর 2 থেকে 7
পর্যন্ত অঙ্ক নয়, অক্ষর 'z'।
একটি রেগুলার এক্সপ্রেশন লিখুন যা নিম্নলিখিত প্যাটার্ন অনুসারে স্ট্রিং খুঁজে পাবে:
অক্ষর 'x', তারপর বড় ল্যাটিন অক্ষর নয় 1 বা তার বেশি
বার, অক্ষর 'z'।
একটি রেগুলার এক্সপ্রেশন লিখুন যা নিম্নলিখিত প্যাটার্ন অনুসারে স্ট্রিং খুঁজে পাবে:
অক্ষর 'x', তারপর বড় বা ছোট ল্যাটিন অক্ষর নয় এবং
1 থেকে 5 পর্যন্ত অঙ্ক নয় 1
বা তার বেশি বার, অক্ষর 'z'।