ইমেইল অ্যাড্রেস গুলো বেশ জটিল এবং সারাবিশ্বে কোনো স্ট্যান্ডার্ড মেনে চলা হয় না যা Regex-এ ইমেইল শনাক্ত করা কঠিন করে দেয়। RFC 5322 ইমেইল অ্যাড্রেসের ফরম্যাট নির্দিষ্ট করে। আমরা এই ফরম্যাট ব্যবহার করে টেক্সট থেকে ইমেইল অ্যাড্রেস এক্সট্রাক্ট করব।
উদাহরণস্বরূপ, একটি দেওয়া ইনপুট স্ট্রিং এর জন্য −
Hi my name is John and email address is john.doe@somecompany.co.uk and my friend's email is jane_doe124@gmail.com
আমরা আউটপুট পাব −
john.doe@somecompany.co.uk jane_doe124@gmail.com
আমরা এক্সট্রাকশনের জন্য নিচের regex ব্যবহার করতে পারি −
[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+
আমরা re মডিউলের findall মেথড ব্যবহার করে ইমেইল অ্যাড্রেস এক্সট্রাক্ট করতে পারি। উদাহরণস্বরূপ,
উদাহরণ
import re
my_str = "Hi my name is John and email address is john.doe@somecompany.co.uk and my friend's email is jane_doe124@gmail.com"
emails = re.findall("([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)", my_str)
for mail in emails:
print(mail)
আউটপুট
এটি আউটপুট দেবে −
john.doe@somecompany.co.uk jane_doe124@gmail.com