栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > Python

正则表达式(Regex)-- 捕获组 (capture group)

Python 更新时间:发布时间: 百科书网 趣学号

Regular Expression HOWTO — Python 3.10.4 documentation

捕获组就是把正则表达式中子表达式匹配的内容,保存到内存中以数字编号或显式命名的组里,方便后面引用。
分为普通捕获组(Expression) 和 命名捕获组(?Expression) 。

普通捕获组:

如果没有显式为捕获组命名,即没有使用命名捕获组,那么需要按数字顺序来访问所有捕获组。在只有普通捕获组的情况下,捕获组的编号是按照“(”出现的顺序,从左到右,从1开始进行编号的 。

import re

year_pattern = re.compile((d{4})-(d{2}-(dd)))
test_str = '2022-05-09'
match = version_pattern.search(test_str)
print(match.group(0)) #2022-05-09
print(match.group(1)) #2022      
print(match.group(2)) #05-09     
print(match.group(3)) #09
     

命名捕获组

import re

version_pattern = re.compile(r'.*?Test *?Suite *(?P[0-9.]+)_(sts-)?[rR]?(?P[0-9-]+) (P?d')
test_str = 'Android Security Test Suite 12_sts-r2 (8385251)n'
match = version_pattern.search(test_str)
major_version = match.groupdict().get(u'major') #12
minor_version = match.groupdict().get(u'minor') #2

转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/869771.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号