Python:正则表达式的一些例子

 

#匹配电话号码(前面3/4-后面7-8): 
 '\d{3,4}-\d{7,8}'

#匹配QQ号(从号码1000开始第一位不能为0):
'[1,9][0,9]{4}'      

#匹配身份证(15位数或者18位,考虑最后一位X): 
'\d{15} | \d{18} | \d{14}X | \d{17}X'

#匹配账号是否合法(以字母开头、允许字母数字下划线、包括5-16字符):
'^[a-zA-Z]\w{4,15}'

#匹配正整数:
'^[0-9]'\d*$

#匹配负整数:
'^-[0-9]\d*$'

#匹配整数:
'-?[0-9]\d*$'

#匹配26个英文字母组成的字符串:
'[a-zA-Z]+$'

#匹配26个大写字母组成的字符串:
'[A-Z]+$'

#匹配26个小写字母组成的字符串:
'[a-z]+$'

#匹配数字和26个字母或者下划线组成的字符串:
'[0-9a-zA-Z_]+$'

 

#验证邮箱地址是否正确
import re

while 1:
        email = input('please input your e-mail address:')
        def yz(email):
                yanz = re.compile(r'^[a-zA-Z0-9]+@[a-zA-Z0-9]+.\w{3}$')  #先行编译正则表达式语句
                if yanz.match(email):                  #传入数据来匹配操作,匹配成功则返回匹配出来的内容
                        youx = yanz.match(email)       #把匹配的返回的对象赋给youx
                        print(youx.group())
                        print('okokok\n')
                else:
                        print('nonono\n')

        yz(email)

#输出结果
please input your e-mail address:153236205@qq.com
153236205@qq.com
okokok
please input your e
-mail address:woshinibaba nonono
please input your e
-mail address:

 

posted @ 2018-05-28 11:22  kumata  阅读(259)  评论(0编辑  收藏  举报