python基础学习:验证输入的手机号码是否为中国移动的号码

2020-12-22  本文已影响0人  0清婉0

2020-12-22

import re

pattern = r'(13[4-9]\d{8})$|(15[01289]\d{8})$'

mobile = input("请输入您的手机号码:")

match = re.match(pattern, mobile)

if match == None:

    print(mobile, "不是有效的中国移动手机号码")

else:

    print(mobile, "是有效的中国移动手机号码")

【知识点】

# 行定位符:

描述字符串的边界  ^行的开始  $行的结尾

# 元字符

# .匹配除换行符以外的任意字符

# \w 匹配字母、数字、下划线或汉字

# \W 匹配除字母、数字、下划线或汉字以外的字符

# \s 匹配单个的空白符(包括TAB键和换行符)

# \S 除单个空白符(包括TAB键和换行符)以外的所有字符

# \b 匹配单词的开始或结束,单词的分界符通常是空格,标点符号或者换行

# \d 匹配数字

# 限定符

# ? 匹配前面的字符零次或一次  如:colou?r  结果:匹配colour和color

# + 匹配前面的字符一次或多次  如:go+gle  结果:匹配范围从gogle到goo……gle

# * 匹配前面的字符零次或多次  如:go*gle  结果:匹配范围从ggle到goo……gle

# {n} 匹配前面的字符n次      如:go{2}gle  结果:只匹配google

# {n,} 匹配前面的字符最少n次  如:go{2,}gle  结果:匹配范围从google到goo……gle

# {n,m} 匹配前面的字符最少n次,最多m次  如:employe{0,2}  结果:匹配employ,employe和employee

# 匹配身份证

# (^\d{15}$)|(^\d{18}$)|(^\d{17})|(\d|X|x)$

上一篇下一篇

猜你喜欢

热点阅读