ধরুন আমাদের স্ট্রিং হিসাবে একটি ইমেল ঠিকানা আছে। নিম্নলিখিত শর্তগুলির উপর ভিত্তি করে এটি বৈধ কি না তা আমাদের পরীক্ষা করতে হবে -
-
বিন্যাস অবশ্যই username@company.domain বিন্যাস
হতে হবে -
ব্যবহারকারীর নামে শুধুমাত্র বড় এবং ছোট হাতের অক্ষর, সংখ্যা, ড্যাশ এবং আন্ডারস্কোর থাকতে পারে
-
কোম্পানির নামে শুধুমাত্র বড় এবং ছোট হাতের অক্ষর এবং সংখ্যা থাকতে পারে
-
ডোমেনে শুধুমাত্র বড় এবং ছোট হাতের অক্ষর থাকতে পারে
-
এক্সটেনশনের সর্বোচ্চ দৈর্ঘ্য হল 3.
আমরা মেইল ঠিকানা যাচাই করতে রেগুলার এক্সপ্রেশন ব্যবহার করতে পারি। রেগুলার এক্সপ্রেশন পুনরায় লাইব্রেরি আমদানি করে ব্যবহার করা যেতে পারে। একটি প্যাটার্ন মেলাতে আমরা পুনরায় লাইব্রেরির অধীনে match() ফাংশন ব্যবহার করব।
সুতরাং, যদি ইনপুটটি s ="popular_website15@comPany.com" এর মত হয়, তাহলে আউটপুট হবে True
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- pat :="[a-zA-Z0-9-_] দিয়ে শুরু তারপর @ তারপর কোম্পানির নাম [a-zA-Z0-9] দিয়ে তারপর ডট এবং ডোমেন দ্বারা আলাদা করা [a-z] যার দৈর্ঘ্য 1 থেকে 3 এবং এটি শেষে উপস্থিত"
- যদি s-এর সাথে প্যাট মিলে যায়, তাহলে
- সত্য ফেরান
- অন্যথায় মিথ্যা ফেরত দিন
উদাহরণ
আসুন আরও ভালভাবে বোঝার জন্য নিম্নলিখিত বাস্তবায়ন দেখি
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