当前位置: 首页 > 后端技术 > Python

Python学习系列——正则表达式(十)

时间:2023-03-25 19:32:21 Python

正则表达式是匹配字符串的利器。可以为我们省去很多字符串判断的时间。匹配规则说明:例:re模块Python提供了re模块,包含了正则表达式的所有功能。推荐使用Python的r前缀,这样就不用考虑转义的问题了。match()方法判断是否匹配。如果匹配成功,则返回一个Match对象,否则返回None。importrea=re.match(r'^\d{3}-\d{3,8}$','010-12345')print(a)结果:常用表达式如下:test='正则表达式'ifre.match(r'正则表达式',test):print('ok')else:print('failed')拆分字符串Normal我们将使用split()拆分字符串:b='abc'.split('')print(b)results:['a','b','','','c']这种拆分也会拆分空格,不符合我们的要求:接下来我们使用正则表达式进行拆分:b=re.split(r'\s+','abc')print(b)operationresult:['a','b','c']正则表达式除了简单判断组是否匹配外,还有一个强大的提取子串的功能。用()表示要提取的组(Group)m=re.match(r'^(\d{3})-(\d{3,8})$','010-12345')print(m)print(m.group(0))print(m.group(1))print(m.group(2))运行结果:010-1234501012345我们可以发现group(0)永远是原始字符串,group(1),group(2)...代表第一个,第二,...子串。