正则表达式练习 | 手把手教你入门Python之八十九-阿里云开发者社区

开发者社区> Python学习站> 正文

正则表达式练习 | 手把手教你入门Python之八十九

简介: 通过案例练习,熟练运用正则表达式。

上一篇:正则表达式模式 | 手把手教你入门Python之八十八
下一篇:正则替换 | 手把手教你入门Python之九十

本文来自于千锋教育在阿里云开发者社区学习中心上线课程《Python入门2020最新大课》,主讲人姜伟。

正则表达式练习

1、判断用户输入的内容是否是数字,如果是数字转换成为数字类型

import re

num = input('请输入一段数字:')
if re.fullmatch(r'\d+(\.\d+)?', num):
    print('是个数字')
    print(float(num))
else:
    print('不是一个数字')

2、以非数字开头,后面有 字母数字_-组成的长度4到14位的字符串:

r'^\D[a-z0-9A-Z_\-]{3,13}'

3、匹配邮箱

r'^([A-Za-z0-9_\-\.])+@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$

4、匹配手机号

r'^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[05-9]))\d{8}$'

5、匹配身份证号
1XXXXX ~ 9XXXXX 1800~2099 01~09 | 10|11|12 01~29除去10 20 |10|20|30|31 734 X
420606 20 19 09 2 3 398 8

r'^[1-9]\d{5}(18|19|20|)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$'

6、匹配⻋牌号

r'^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$'

7、匹配URL地址

r'((ht|f)tps?):\/\/([\w\-]+(\.[\w\-]+)*\/)*[\w\-]+(\.[\w\-]+)*\/?(\?([\w\-\.,@?^=%&:\/~\+#]*)+)?'

8、匹配QQ号

r'^[1-9][0-9]{4,10}$'

9、匹配微信号

r'^[a-zA-Z]([-_a-zA-Z0-9]{5,19})+$'

配套视频

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
Python学习站
使用钉钉扫一扫加入圈子
+ 订阅

Python学习资料大全,包含Python编程学习、实战案例分享、开发者必知词条等内容。

官方博客
官网链接