পাইথনের search মেথডে ক্যাপচারিং গ্রুপ
মিল খোঁজার সময় প্রায়শই সাবস্ট্রিংটিকে তথাকথিত ক্যাপচারিং গ্রুপ-এ ভাগ করা সুবিধাজনক। এগুলি খুঁজে পাওয়া অংশগুলিকে আলাদা অংশে ভাগ করার একটি উপায় উপস্থাপন করে। এগুলি ব্যবহার করার জন্য রেগুলার এক্সপ্রেশনের অংশটিকে বন্ধনীর মধ্যে আবদ্ধ করতে হবে।
আসুন অনুশীলনে চেষ্টা করি। ধরুন আমাদের নিম্নলিখিত স্ট্রিংটি আছে:
txt = '123 456'
আসুন সংখ্যার সাবস্ট্রিংগুলিকে ক্যাপচারিং গ্রুপে ভাগ করি। এর জন্য নিম্নলিখিত রেগুলার এক্সপ্রেশনটি লিখি:
res = re.search('(\d+) (\d+)', txt)
ফলস্বরূপ আমরা একটি match-অবজেক্ট পাব।
এর 1 সূচকের এলিমেন্টে প্রথম ক্যাপচারিং গ্রুপটি থাকবে,
2 সূচকের এলিমেন্টে - দ্বিতীয় ক্যাপচারিং গ্রুপটি,
এবং 0 সূচকের এলিমেন্টে - সমস্ত খুঁজে পাওয়া অংশ (তথাকথিত জিরো ক্যাপচারিং গ্রুপ):
print(res[0]) # '123 456' - খুঁজে পাওয়া অংশ
print(res[1]) # '123' - ১ম ক্যাপচারিং গ্রুপ
print(res[2]) # '456' - ২য় ক্যাপচারিং গ্রুপ
একটি স্ট্রিং দেওয়া আছে, যাতে একটি ডোমেন রয়েছে:
txt = 'sss domain.ru zzz'
এই ডোমেনটি খুঁজে বের করুন এবং এর নাম প্রথম ক্যাপচারিং গ্রুপে রাখুন, এবং zone-টি দ্বিতীয়টিতে রাখুন।
একটি স্ট্রিং দেওয়া আছে, যাতে একটি তারিখ রয়েছে:
txt = '31.12.2025'
দিনটি প্রথম ক্যাপচারিং গ্রুপে রাখুন, মাস - দ্বিতীয়টিতে, এবং বছর - তৃতীয়টিতে রাখুন।