在 Python 的 re 模块中,fullmatch 函数用于从开头到结尾进行正则匹配。而 lastindex 函数则用于返回最后成功匹配的索引位置。例如,如果正则表达式匹配成功,但是有多个重复的字符串,那么就会返回最后一次匹配到的字符串的索引位置。
re.fullmatch(pattern, string, flags=0).lastindex
参数说明:
返回值:
下面的示例代码将演示如何使用 re.fullmatch.lastindex 函数查找身份证号码中的出生日期。
import re
id_card = '440111199001011998'
# 匹配身份证号中的出生日期
match = re.fullmatch(r'(\d{6})(\d{4})(\d{2})(\d{2})\d{3}[X\d]', id_card)
if match:
print(f'出生日期:{match.group(2)}/{match.group(3)}/{match.group(4)}')
print(f'最后匹配的位置索引:{match.lastindex}')
else:
print('身份证号码不符合要求。')
输出结果为:
出生日期:1990/01/01
最后匹配的位置索引:4
下面的示例代码将演示如何使用 re.fullmatch.lastindex 函数从 IP 地址中提取出数值部分。
import re
ip_addr = '192.168.1.1'
# 匹配 IP 地址并提取出数值
match = re.fullmatch(r'(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})', ip_addr)
if match:
print(f'IP 地址:{ip_addr}')
print(f'数值格式:{match.group(1):>3}.'
f'{match.group(2):>3}.{match.group(3):>3}.{match.group(4):>3}')
print(f'最后匹配的位置索引:{match.lastindex}')
else:
print('IP 地址格式不对。')
输出结果为:
IP 地址:192.168.1.1
数值格式:192.168. 1. 1
最后匹配的位置索引:4
本文链接:http://task.lmcjl.com/news/15380.html