রেগুলার এক্সপ্রেশনে ক্যারেক্টার পুনরাবৃত্তি অপারেটর
কিছু পরিস্থিতি রয়েছে যখন আপনাকে নির্দিষ্ট সংখ্যকবার একটি ক্যারেক্টার পুনরাবৃত্তি নির্দেশ করতে হবে। যদি পুনরাবৃত্তির সঠিক সংখ্যা অজানা থাকে, তাহলে আপনি কেবল এটি কয়েকবার লিখতে পারেন - 'aaaa'। কিন্তু কী করবেন যদি আপনাকে এমন কিছু বলতে হয়: এক বা একাধিকবার পুনরাবৃত্তি করুন?
এর জন্য পুনরাবৃত্তি অপারেটর (কোয়ান্টিফায়ার) রয়েছে: প্লাস + (এক বা একাধিকবার), স্টার * (শূন্য বা একাধিকবার) এবং প্রশ্নবোধক চিহ্ন ? (শূন্য বা একবার)। এই অপারেটরগুলি তাদের আগে থাকা ক্যারেক্টারের উপর কাজ করে।
আসুন উদাহরণের মাধ্যমে এই অপারেটরগুলির কাজ দেখি।
উদাহরণ
প্যাটার্ন অনুসারে সমস্ত সাবস্ট্রিং খুঁজে বের করা যাক ক্যারেক্টার 'x', ক্যারেক্টার 'a' এক বা একাধিকবার, ক্যারেক্টার 'x':
txt = 'xx xax xaax xaaax xbx'
res = re.sub('xa+x', '!', txt)
print(res)
কোড এক্সিকিউশনের ফলাফল:
'xx ! ! ! xbx'
উদাহরণ
প্যাটার্ন অনুসারে সমস্ত সাবস্ট্রিং খুঁজে বের করা যাক ক্যারেক্টার 'x', ক্যারেক্টার 'a' শূন্য বা একাধিকবার, ক্যারেক্টার 'x':
txt = 'xx xax xaax xaaax xbx'
res = re.sub('xa*x', '!', txt)
print(res)
কোড এক্সিকিউশনের ফলাফল:
'! ! ! ! xbx'
উদাহরণ
প্যাটার্ন অনুসারে সমস্ত সাবস্ট্রিং খুঁজে বের করা যাক ক্যারেক্টার 'x', ক্যারেক্টার 'a' শূন্য বা একবার, ক্যারেক্টার 'x':
txt = 'xx xax xaax xbx'
res = re.sub('xa?x', '!', txt)
print(res)
কোড এক্সিকিউশনের ফলাফল:
'! ! xaax xbx'
ব্যবহারিক সমস্যা
একটি স্ট্রিং দেওয়া হয়েছে:
txt = 'aa aba abba abbba abca abea'
একটি রেগুলার এক্সপ্রেশন লিখুন যা 'aba', 'abba', 'abbba' স্ট্রিংগুলি খুঁজে পাবে প্যাটার্ন অনুসারে: ক্যারেক্টার 'a', ক্যারেক্টার 'b' যেকোনো সংখ্যকবার, ক্যারেক্টার 'a'।
একটি স্ট্রিং দেওয়া হয়েছে:
txt = 'aa aba abba abbba abca abea'
একটি রেগুলার এক্সপ্রেশন লিখুন যা 'aa', 'aba', 'abba', 'abbba' স্ট্রিংগুলি খুঁজে পাবে প্যাটার্ন অনুসারে: ক্যারেক্টার 'a', ক্যারেক্টার 'b' যেকোনো সংখ্যকবার (এমনকি একবারও না), ক্যারেক্টার 'a'।
একটি স্ট্রিং দেওয়া হয়েছে:
txt = 'aa aba abba abbba abca abea'
একটি রেগুলার এক্সপ্রেশন লিখুন যা 'aa', 'aba' স্ট্রিংগুলি খুঁজে পাবে প্যাটার্ন অনুসারে: ক্যারেক্টার 'a', ক্যারেক্টার 'b' একবার বা একবারও না, ক্যারেক্টার 'a'।
একটি স্ট্রিং দেওয়া হয়েছে:
txt = 'aa aba abba abbba abca abea'
একটি রেগুলার এক্সপ্রেশন লিখুন যা 'aa', 'aba', 'abba', 'abbba' স্ট্রিংগুলি খুঁজে পাবে, 'abca' এবং 'abea' কে ধরে না নিয়ে।