পাইথনে রেগুলার এক্সপ্রেশনে কার্লি ব্র্যাকেট
'+', '*', '?' অপারেটরগুলি
ভাল, তবে, এগুলোর সাহায্যে নির্দিষ্ট সংখ্যক পুনরাবৃত্তি
নির্দেশ করা যায় না। এই ক্ষেত্রে
{} অপারেটরটি আপনার কাজে আসবে।
এটি নিম্নরূপে কাজ করে: {5}
- পাঁচটি পুনরাবৃত্তি, {2,5} – দুই থেকে পাঁচবার (উভয়ই অন্তর্ভুক্ত) পুনরাবৃত্তি,
{2,} - দুই বা তার বেশি বার পুনরাবৃত্তি। উদাহরণগুলি
দেখুন:
উদাহরণ
এই উদাহরণে, অনুসন্ধান প্যাটার্নটি এইরকম দেখাচ্ছে:
অক্ষর 'x', অক্ষর 'a'
এক বা দুইবার, অক্ষর 'x':
txt = 'xx xax xaax xaaax'
res = re.sub('xa{1,2}x', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'xx ! ! xaaax'
উদাহরণ
এই উদাহরণে, অনুসন্ধান প্যাটার্নটি এইরকম দেখাচ্ছে:
অক্ষর 'x', অক্ষর 'a'
দুইবার বা তার বেশি, অক্ষর 'x':
txt = 'xx xax xaax xaaax'
res = re.sub('xa{2,}x', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'xx xax ! !'
উদাহরণ
এই উদাহরণে, অনুসন্ধান প্যাটার্নটি এইরকম দেখাচ্ছে:
অক্ষর 'x', অক্ষর 'a'
তিনবার, অক্ষর 'x':
txt = 'xx xax xaax xaaax'
res = re.sub('xa{3}x', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'xx xax xaax !'
উদাহরণ
এই উদাহরণে, অনুসন্ধান প্যাটার্নটি এইরকম দেখাচ্ছে:
অক্ষর 'a' দশবার:
txt = 'aaa aaaaaaaaaa aaa'
res = re.sub('a{10}', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'aaa ! aaa'
উদাহরণ
এই উদাহরণে একটি প্যাটার্ন আছে: অক্ষর
'x', অক্ষর 'a' তিনবার বা তার কম,
অক্ষর 'x'। এটি বাস্তবায়ন করার জন্য,
3 সংখ্যাটির আগে সংখ্যা উল্লেখ না করে
শুধুমাত্র একটি কমা রাখা যেতে পারে:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{,3}x', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'! ! ! !'
উদাহরণ
3 এর আগে শূন্যও অনুমোদিত:
txt = 'xx xax xaax xaaax'
res = re.sub('xa{0,3}x', '!', txt)
print(res)
কোড 실행ের ফলাফল:
'! ! ! !'
ব্যবহারিক সমস্যা
একটি স্ট্রিং দেওয়া আছে:
txt = 'aa aba abba abbba abbbba abbbbba'
একটি রেগুলার এক্সপ্রেশন লিখুন যা শুধুমাত্র
'abba', 'abbba', 'abbbba'
স্ট্রিংগুলি খুঁজে পাবে।
একটি স্ট্রিং দেওয়া আছে:
txt = 'aa aba abba abbba abbbba abbbbba'
একটি রেগুলার এক্সপ্রেশন লিখুন যা
'aba'-র মতো স্ট্রিংগুলি খুঁজে পাবে, যেখানে 'b'
3-এর কম (অন্তর্ভুক্ত) বার উপস্থিত হয়েছে।
একটি স্ট্রিং দেওয়া আছে:
txt = 'aa aba abba abbba abbbba abbbbba'
একটি রেগুলার এক্সপ্রেশন লিখুন যা
'aba'-র মতো স্ট্রিংগুলি খুঁজে পাবে, যেখানে 'b'
4-এর বেশি (অন্তর্ভুক্ত) বার উপস্থিত হয়েছে।