ईमेल पतों काफ़ी जटिल हैं और पूरी दुनिया में उनका पालन नहीं किया जा रहा है, जिससे रेगेक्स में ईमेल की पहचान करना मुश्किल हो जाता है। RFC 5322 ईमेल पते के प्रारूप को निर्दिष्ट करता है। हम टेक्स्ट से ईमेल पते निकालने के लिए इस प्रारूप का उपयोग करेंगे।
उदाहरण के लिए, किसी दिए गए इनपुट स्ट्रिंग के लिए -
Hi my name is John and email address is [email protected] and my friend's email is [email protected]
हमें आउटपुट मिलना चाहिए -
[email protected] [email protected]
एक्सट्रैक्शन के लिए हम निम्नलिखित रेगेक्स का उपयोग कर सकते हैं -
[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+
हम फिर से मॉड्यूल से सभी विधि खोजें का उपयोग करके ईमेल पते निकाल सकते हैं। उदाहरण के लिए,
उदाहरण
import re my_str = "Hi my name is John and email address is [email protected] and my friend's email is [email protected]" emails = re.findall("([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)", my_str) for mail in an email: print(mail)
आउटपुट
यह आउटपुट देगा -
[email protected] [email protected]