python正则表达式匹配邮箱_Python-同时匹配邮箱和电话号码的正则表达式

import re

print 'Please input mail address:',

inputmail=raw_input()

"""

说明:

[^\._-][\w\.-]+@(?:[A-Za-z0-9]+\.)+[A-Za-z]+$匹配邮箱。

综合目前国内常用的邮箱,大概通用的规则包括:

1、[^\._],不能以下划线和句点开头。

2、[\w\.]+,包括字母、数字。而对句点及下划线各提供商有差别,对此有效性不做更严格的判断。

3、@是必须的。

4、(?:[A-Za-z0-9]+\.)+[A-Za-z]+$,@后以xxx.xxx结尾,考虑到多级域名,会有这种情况xxx.xxx.xxx如xxx@yahoo.com.cn

^0\d{2,3}\d{7,8}$|^1[358]\d{9}$|^147\d{8}$匹配电话号码。

只考虑国内的情况,大概通用的规则包括:

1、^0\d{2,3},固定电话区号3-4位数字,以0开头。

2、d{7,8}$,固定电话一般7-8位数字。

3、国内目前的手机号码都是11位数字,三大运营商的号码段基本都在上面列出来了,我们这里除了147的号码的段,其他的都只考虑前两位,

第三位就不考虑了,否则,工作量也很大。前两位包括13*、15*、18*。

"""

p=re.compile('[^\._-][\w\.-]+@(?:[A-Za-z0-9]+\.)+[A-Za-z]+$|^0\d{2,3}\d{7,8}$|^1[358]\d{9}$|^147\d{8}

)

match = p.match(inputmail)

if match:

print match.group()

else:

print 'mail address or phone number is error!'

"""

部分测试结果:

正确的邮箱地址格式:

Please input mail address: biao.wu@gmail.com

biao.wu@gmail.com

Please input mail address: wu_biao@163.com

wu_biao@163.com

Please input mail address: wubiao@yahoo.com.cn

wubiao@yahoo.com.cn

Please input mail address: wu-biao@qq.com

wu-biao@qq.com

Please input mail address: 8888@qq.com

8888@qq.com

错误的邮箱地址格式:

Please input mail address: .biao@163.com

mail address or phone number is error!

Please input mail address: _wubiao@qq.com

mail address or phone number is error!

Please input mail address: -qq@qq.com

mail address or phone number is error!

Please input mail address: biao@@.com

mail address or phone number is error!

Please input mail address: wubiao@qq.com.

mail address or phone number is error!

Please input mail address: wubiao@qq.com.22

mail address or phone number is error!

Please input mail address: wubiao#@163.com

mail address or phone number is error!

正确的电话号码格式:

Please input mail address: 13530315051

13530315051

Please input mail address: 075512345678

075512345678

Please input mail address: 18667676767

18667676767

错误的电话号码格式:

Please input mail address: 135303154

mail address or phone number is error!

Please input mail address: 135303112345

mail address or phone number is error!

Please input mail address: 1234567890

mail address or phone number is error!

"""

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值