ধরুন আমাদের একটি স্ট্রিং হিসেবে ইমেইল ঠিকানা আছে। নিচের শর্ত অনুযায়ী আমাদের চেক করতে হবে এটি বৈধ কিনা:
- ফরম্যাটটি অবশ্যই
username@company.domainহবে - ইউজারনেমে শুধু বড়/ছোট হাতের অক্ষর, সংখ্যা, ড্যাশ এবং আন্ডারস্কোর থাকতে পারে
- কোম্পানির নাম শুধু বড়/ছোট হাতের অক্ষর এবং সংখ্যা থাকতে পারে
- ডোমেইনে শুধু বড়/ছোট হাতের অক্ষর থাকতে পারে
- এক্সটেনশনের সর্বোচ্চ দৈর্ঘ্য ৩
নियमিত অভিব্যক্তি (regular expression) ব্যবহার করে মেইল ঠিকানা যাচাই করা যায়। re লাইব্রেরি ইম্পোর্ট করে রেগুলার এক্সপ্রেশন ব্যবহার করা যায়। প্যাটার্ন ম্যাচ করতে re লাইব্রেরির অধীনে match() ফাংশন ব্যবহার করা হয়।
উদাহরণস্বরূপ, যদি ইনপুট s = "popular_website15@comPany.com" হয়, তবে আউটপুট হবে True।
সমাধানের ধাপসমূহ
pat := "^[a-zA-Z0-9-_]+@[a-zA-Z0-9]+\.[a-z]{1,3}$"- যদি
pats-এর সাথে ম্যাচ করে, তবেTrueরিটার্ন করুন - অন্যথায়
Falseরিটার্ন করুন
উদাহরণ
নিচের ইমপ্লিমেন্টেশনটি দেখুন ভালো বুঝার জন্য:
import re
def solve(s):
pat = "^[a-zA-Z0-9-_]+@[a-zA-Z0-9]+\.[a-z]{1,3}$"
if re.match(pat, s):
return True
return False
s = "popular_website15@comPany.com"
print(solve(s))
ইনপুট
"popular_website15@comPany.com"
আউটপুট
True