现有现有邮箱列表["xiaoWang@139.com", "xiaoWang@163.com, ".com.123456789@qq.com","xiaowang@163.com","xiaowang987531@139.com","lisi123456@sina.com"],使用分组匹配查找出其中合规的邮箱信息,并判断其所属运营公司(网易、腾讯、新浪、移动)
时间: 2023-07-19 17:32:53 浏览: 241
可以使用Python的正则表达式模块re来进行邮箱格式的匹配,然后根据邮箱的后缀来判断其所属的运营公司。以下是一个示例代码:
```python
import re
emails = ["xiaoWang@139.com", "xiaoWang@163.com", "com.123456789@qq.com", "xiaowang@163.com", "xiaowang987531@139.com", "lisi123456@sina.com"]
# 匹配合规的邮箱格式
valid_emails = []
for email in emails:
if re.match(r'^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$', email):
valid_emails.append(email)
# 根据邮箱后缀判断所属运营公司
for email in valid_emails:
suffix = email.split('@')[1]
if suffix in ['163.com', '126.com', 'yeah.net']:
print(email, '属于网易')
elif suffix in ['qq.com', 'foxmail.com']:
print(email, '属于腾讯')
elif suffix in ['sina.com', 'sina.cn']:
print(email, '属于新浪')
elif suffix in ['139.com']:
print(email, '属于移动')
else:
print(email, '无法确定所属运营公司')
```
这个程序首先使用正则表达式匹配出合规的邮箱格式,然后根据邮箱后缀判断所属的运营公司,并输出结果。其中,正则表达式的匹配规则是:邮箱用户名可以由大小写字母、数字、下划线和短横线组成,域名可以由大小写字母、数字、下划线和短横线组成,且域名必须以点号分隔,且最后一部分域名必须为字母或数字。
阅读全文