python 正则表达式

import re

email = 'someone@gmail.com'
email2 = 'bill.gates@microsoft.com'
email3 = '<Tom Paris> tom@voyager.org'

if re.match(r'^[0-9a-zA-Z][0-9a-zA-Z\_\.]+\@[0-9a-z]+\.(com|cn|org|net)$', email):
    print ('ok')
else:
    print ('failed')

if re.match(r'^[0-9a-zA-Z][0-9a-zA-Z\_\.]+\@[0-9a-z]+\.(com|cn|org|net)$', email2):
    print ('ok')
else:
    print ('failed')


if re.match(r'^(\<[0-9a-zA-Z\s_]+>)\s+([0-9a-zA-Z][0-9a-zA-Z._]+\@[0-9a-z]+.\w+)$', email3):
    zz = re.match(r'^(\<[0-9a-zA-Z\s_]+>)\s+([0-9a-zA-Z][0-9a-zA-Z._]+\@[0-9a-z]+.\w+)$', email3)
    print (zz.group(1))
    print ('ok')
else:
    print ('failed')

说明一下:
^[0-9a-zA-Z][0-9a-zA-Z_.]+\@[0-9a-z]+.(com|cn|org|net) [09azAZ][09azAZ.]+线[09az]+gmail163(com|cn|org|net) 域名后半部分基本上是以这几个为结尾,还有 edu、gov 等暂未考虑进去。

所以,整个正则表达式还可以简写成 ^[\w][\w_.]+\@[\w]+.(com|cn|org|net)$

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值