正则表达式在这里无法正常工作。为了能够可靠地做到这一点,您需要使用一个知道什么是有效后缀的库。
否则,提取器如何区分email@info.organizationName.com 和email@organizationName.co.uk?
这可以使用tldextract:
例子:
import tldextract
emails = ['email@organizationName.com',
'email@info.organizationName.com',
'email@organizationName.co.uk',
'email@info.organizationName.co.uk',
]
for addr in emails:
print(tldextract.extract(addr))
输出:
ExtractResult(subdomain='', domain='organizationName', suffix='com')
ExtractResult(subdomain='info', domain='organizationName', suffix='com')
ExtractResult(subdomain='', domain='organizationName', suffix='co.uk')
ExtractResult(subdomain='info', domain='organizationName', suffix='co.uk')
要仅访问域,请使用tldextract.extract(addr).domain。