学完Python的基础语法还远远不够,还需要学习一些进阶用法,Python的正则表达式就是其一,什么是正则表达式呢,就我理解,就是用来检索一些需要的信息,比如说从一段文本中找出其中全部的数字或者字母,或者再加一些限定范围都是可以的,学习这个可以帮助我们从大量的文本信息中快速找到我们需要的信息。
python中re模块提供了正则表达式的功能
下面来介绍几个常用的方法
1、match
匹配字符串
re.match()必须从字符串开头匹配!
match方法尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回none。
演示代码
import re
a = re.match('test','testasdtest')
print(a) #返回一个匹配对象
print(a.group()) #返回test,获取不到则报错
print(a.span()) #返回匹配结果的位置,左闭右开区间
print(re.match('test','atestasdtest')) #返回None
结果:
<re.Match object; span=(0, 4), match='test'>
test
(0, 4)
None
我们发现这个方法只可以找到第一个,确找不到后面的,后面我们改进
匹配单字符
. 匹配任意一个字符
\d 匹配数字
\D 匹配非数字
\s 匹配特殊字符,如空白,空格,tab等
\S 匹配非空白
\w 匹配单词、字符,如大小写字母,数字,_