正则表达式

 正则表达式练习网站

regex101: build, test, and debug regexicon-default.png?t=N7T8https://regex101.com/

8.1 身份证号分析

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

import re
s = '1102231990xxxxxxxx'
res = re.search('(?P<province>\d{3})(?P<city>\d{3})(?P<born_year>\d{4})',s)
print("re.search获得的为一个对象,无法正常输出:",res)
print("捕获到的列表",res.groupdict()) # 打印捕获到的列表

re.search获得的为一个对象,无法正常输出: <re.Match object; span=(0, 10), match='1102231990'>

捕获到的列表 {'province': '110', 'city': '223', 'born_year': '1990'}

进程已结束,退出代码0

进程已结束,退出代码0

正则表达式命名:括号内为一个捕获组

(?P<province>\d{3})——数字的前3位为省份;

(?P<city>\d{3})——接下来的3为为城市;

(?P<born_year>\d{4})'——接下来的4位为出生年份

research返回的是对象,无法正常输出我们想要的内容,可以有一下两种方法:

方法一:.groupdict()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值