多语言展示
当前在线:615今日阅读:126今日分享:42

Python3正则表达式之match用法

Python3正则表达式之match用法,python正则表达式非常简单实用高效,在爬虫等应用场景使用频率很高,match匹配默认是从起始位置查找返回第一个符合要求的
工具/原料

Python3

方法/步骤
1

打开python开发工具IDLE,新建‘zzmatch.py’文件,写代码如下:import re  pattern = re.compile(r'\d+')  m = pattern.match('hheh7777')  print (m)

2

F5运行代码,打印出None这是因为match是从起始位置开始查找,起始位置并不是数字所以匹配不上

3

match函数也可以传递位置参数,是两个可选参数,这样就不会从起始位置进行匹配,修改代码如下:import re  pattern = re.compile(r'\d+')  m = pattern.match('hheh7777',3,7)  print (m)

4

F5运行程序,依然打印出None这是因为下标从0开始算

5

修改代码,匹配到字符串的数字,这里用到了group分组的方法,因为只有一个分组所以group参数为空import re  pattern = re.compile(r'\d+')  m = pattern.match('hheh7777',4,7)  print (m.group())

6

F5运行代码,打印出数字,因为只截取到第七位,所以只有三位数字

7

举个负责点的例子,修改代码如下:import re  pattern = re.compile(r'([a-z]+) ([a-z]+)',re.I) #注意两个括号间有空格  m = pattern.match('nihao Nihao WE')  print (m) print (m.group()) print (m.group(0)) print (m.group(1)) print (m.span(1))  print (m.group(2)) print (m.span(2))  这里括号代码分组,group()和group(0)代表所有内容,group(1)是第一个分组,group(2)是第二个分组,span(1)是第一个分组下标,span(2)是第二个分组下标

8

F5运行代码,打印内容如下图

推荐信息