使用正則表示式在 Python 中提取電子郵件地址
電子郵件地址非常複雜,世界各地沒有遵循標準,這給在正則表示式中識別電子郵件帶來了困難。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
我們可以使用以下正則表示式進行提取 −
[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+
我們可以使用 re 模組的 find all 方法來提取電子郵件地址。例如,
示例
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 an email: print(mail)
輸出
將給出輸出 −
john.doe@somecompany.co.uk jane_doe124@gmail.com
廣告