python正则表达式re.group()用法
作者:程序遇上智能星空 发布时间:2021-08-17 03:31:03
标签:python,re.group()
re.group()用法
在正则表达式中,re.group()方法是用来提取出分组截获的字符串,匹配模式里的括号用于分组。
举例说明:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import re
if __name__ == '__main__':
# 匹配模式
test_pattern = r"(\d{2}年)(\d{4}年)(\d{4}年)"
# 待匹配的字符串
test = "18年2019年2020年"
# 整体匹配结果
print(re.search(test_pattern, test).group())
# 整体匹配结果
print(re.search(test_pattern, test).group(0))
# 第一个括号处
print(re.search(test_pattern, test).group(1))
# 第二个括号处
print(re.search(test_pattern, test).group(2))
# 第三个括号处
print(re.search(test_pattern, test).group(3))
输出:
18年2019年2020年
18年2019年2020年
18年
2019年
2020年
Process finished with exit code 0
匹配模式中的三个括号将匹配结果分成了三组。
re.group() 与re.group(0)就是匹配的整体结果;
re.group(1) 列出第一个括号匹配部分;
re.group(2) 列出第二个括号匹配部分;
re.group(3) 列出第三个括号匹配部分。
注意,如果没有匹配成功的,re.search返回的结果是None,使用group()会报错,如下所示:
AttributeError: 'NoneType' object has no attribute 'group'
如果匹配模式中没有括号(分组),使用group(1)、group(2)、group(3)会报错,如下所示:
IndexError: no such group
来源:https://blog.csdn.net/kevinjin2011/article/details/125599133
0
投稿
猜你喜欢
- 描述符类要求:描述符就是将某种特殊类型的类的实例指派给另一个类的属性至少要实现以下的一个方法:•__get__(self, instance
- python中的数字类型工具python中为更高级的工作提供很多高级数字编程支持和对象,其中数字类型的完整工具包括:1.整数与浮点型,2.复
- 一、python读取和写入文件内容任务:在cmd默认登陆目录中建立一个命名为test.txt的文件并写入内容“welco
- 生命游戏的算法就不多解释了,百度一下介绍随处可见。因为网上大多数版本都是基于pygame,matlab等外部库实现的,二维数组大多是用num
- 在python的时间使用时,我们无非就是输出字符串的形式,又或者是其他的形式跟字符串之间的来回转换。时间数组对于我们获取具体的年或是天数,都
- 1、自动化代码中,用到了哪些设计模式?单例设计模式工厂模式PO设计模式数据驱动模式面向接口编程设计模式2、什么是断言( Assert) ?断
- 使用css2.1实现多重背景、多重边框效果在单个HTML元素上利用CSS2.1实现拥有3张背景图片和2张内容图效果,或者多重边框的效果。这种
- thinkphp的钩子行为类是一个比较难以理解的问题,网上有很多写thinkphp钩子类的文章,我也是根据网上的文章来设置thinkphp的
- 本文实例讲述了纯JavaScript实现的分页插件。分享给大家供大家参考。具体如下://总条数(必填)var Num=Number(<
- Python assert 语句,又称断言语句,可以看做是功能缩小版的 if 语句,它用于判断某个表达式的值,如果值为真,则程序可以继续往下
- 搜索是大数据领域里常见的需求。Splunk和ELK分别是该领域在非开源和开源领域里的领导者。本文利用很少的Python代码实现了一个基本的数
- 1、#coding:utf-8chose = [ ('foo',1,2), ('bar
- subplot函数介绍matplotlib下, 一个 Figure 对象可以包含多个子图(Axes), 可以使用 subplot() 快速绘
- 不同于以往为大家介绍的函数使用,我们利用pivot函数可以实现的方式,就是用来重塑数据使用的,在python的使用上并不常见,但是如果需要利
- 1. 背景golang 原生 json 包,在处理 json 对象的字段的时候,是需要严格匹配类型的。但是,实际上,当我们与一些老系统或者脚
- 大家好,今天分享一个非常有趣的 Python 教程,如何美化一个 matplotlib 折线图,喜欢记得收藏、关注、点赞。1. 导入包imp
- 概述OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大. 今天小白就带大家一起携手走进 OpenCV 的世界. 高
- 反射什么是反射? - 反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力(自省) 面向对象中的反射&nb
- 有些事情始终是需要坚持下去的。。。今天复习一下之前用到的连续相同数据的统计。首先,创建一个简单的测试表,这里过程就略过了,直接上表(真的是以
- 不知道有多少人是被这个头图骗进来的:)事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八