注册

详解Python re.fullmatch.lastgroup函数:返回最后匹配的命名

Python re模块 re.fullmatch.lastgroup函数

作用

re.fullmatch.lastgroup 函数用于获取最后一次匹配中出现的指定命名组的名称。

使用方法

re.fullmatch(pattern, string, flags=0).lastgroup

其中,参数 pattern 表示正则表达式模式;参数 string 表示要匹配的字符串;参数 flags 表示正则表达式的匹配标志。

方法的返回值为字符串类型,表示匹配结果的最后一个匹配命名组的名称。

示例

示例1:

import re

pattern = r'(?P[0-9A-Z]+)-(?P[0-9A-Z]+)-(?P[0-9A-Z]+)'
string = "110000-BJS-001"

result = re.fullmatch(pattern, string)

print(result.lastgroup)

输出结果为:

code

在该示例中,正则表达式 pattern 匹配字符串 string,最后一个匹配命名组的名称为 code。因此该代码打印出 code

示例2:

import re

pattern = r'(?P[a-zA-Z]+)-(?P\d+)'
string = "Mark-30"

result = re.fullmatch(pattern, string)

print(result.lastgroup)

输出结果为:

age

在该示例中,正则表达式 pattern 匹配字符串 string,最后一个匹配命名组的名称为 age。因此该代码打印出 age

注意事项

re.fullmatch() 函数的返回值为 NoneMatchObject 对象,在使用 lastgroup 属性之前需要进行判断,防止出现空指针异常。