正则表达式中的compile函数(二)
接着上一篇文章的compile函数实例
# 代码
import re
pattern = re.compile(r'([a-z]+) ([a-z]+)', re.I) # re.I 表示忽略大小写
m = pattern.match('Hello World Wide Web')
print(m) # 匹配成功,返回一个Match 对象
print(m.group(0)) # 返回匹配成功的整个子串
print(m.span(0)) # 返回匹配成功整个子串的索引
print(m.group(1)) # 返回第一个分组匹配成功的子串
print(m.span(1)) # 返回第一个分组匹配成功的子串的索引
print(m.group(2)) # 返回第二个分组匹配成功的子串
print(m.span(2)) # 返回第二个分组匹配成功的子串的索引
print(m.groups()) # 等价于(m.group(1),m.group(2), ...)
print(m.group(3)) # 不存在第三个分组
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 运行结果
Traceback (most recent call last):
<_sre.SRE_Match object; span=(0, 11), match='Hello World'>
File "E:/PythonProject/more/test.py", line 13, in <module>
Hello World
print(m.group(3)) # 不存在第三个分组
(0, 11)
IndexError: no such group
Hello
(0, 5)
World
(6, 11)
('Hello', 'World')
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
编辑 (opens new window)
上次更新: 2022/12/31, 16:52:27
- 01
- SpringCache基本配置类05-16
- 03
- Rpamis-security-原理解析12-13