কম্পিউটার টিউটোরিয়াল

পাইথন রেজেক্স ব্যবহার করে স্ট্রিং থেকে ‘1(0+)1’ প্যাটার্ন খুঁজে বের করা

এই টিউটোরিয়ালে আমরা regex (রেগুলার এক্সপ্রেশন) ব্যবহার করে একটি স্ট্রিং-এ 1(0+)1 প্যাটার্নের সকল আবির্ভাব খুঁজে বের করব। পাইথনে re মডিউল রেজেক্স নিয়ে কাজ করতে সাহায্য করে।

নমুনা কেস:

Input: string = "Sample 1(0+)1 string with 1(0+)1 unnecessary patterns 1(0+)1"
Output: Total number of pattern maches are 3 ['1(0+)1', '1(0+)1', '1(0+)1']

অ্যালগরিদম

১. re মডিউল ইম্পোর্ট করুন।
২. একটি স্ট্রিং ইনিশিয়ালাইজ করুন।
৩. re.compile() ব্যবহার করে র‍ लगे প্যাটার্নের জন্য রেজেক্স অবজেক্ট তৈরি করুন। র স্ট্রিং (raw string) পাস করুন।
৪. regex_object.findall() মেথড দিয়ে সব ম‌্যাচ বের করুন।
৫. ম‌্যাচ অবজেক্ট থেকে group() মেথড দিয়ে ম‌্যাচ করা প্যাটার্ন প্রিন্ট করুন।

উদাহরণ কোড

import re

string = "Sample 1(0+)1 string with 1(0+)1 unnecessary patterns 1(0+)1"

# রেজেক্স অবজেক্ট তৈরি (র স্ট্রিং ব্যবহার)
regex = re.compile(r"\d\(\d\+\)\d")

# সব ম‌্যাচ বের করুন
result = regex.findall(string)

print(f"Total number of pattern maches are {len(result)}")
print()
print(result)

আউটপুট

Total number of pattern maches are 3
['1(0+)1', '1(0+)1', '1(0+)1']

উপসংহার

রেজেক্স ব্যবহার করে নির্দিষ্ট প্যাটার্ন খুঁজে বের করা সহজ। প্রশ্ন থাকলে কমেন্ট করুন।


  1. পাইথন প্রোগ্রাম সেট ব্যবহার করে স্ট্রিংয়ে ভাওয়েল কাউন্ট করা

  2. পাইথন ব্যবহার করে স্ট্রিং থেকে সকল ডুপ্লিকেট ক্যারেক্টার বের করা

  3. পাইথনে Regex ব্যবহার করে স্ট্রিংয়ে 10+1 প্যাটার্নের সব_match বের করার প্রোগ্রাম

  4. পাইথনে স্ট্রিংয়ের সকল সম্ভাব্য পারমুটেশন বের করা