首页 > 编程语言 >python re.match() / re.search() / re.findall()

python re.match() / re.search() / re.findall()

时间:2023-02-14 23:11:48浏览次数:40  
标签:search 匹配 python re print group match

re.match函数

re.match 尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match() 就返回 none。

re.search方法

re.search 扫描整个字符串并返回第一个成功的匹配。否则返回None。

re.finall方法

re.findall 在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果有多个匹配模式,则返回元组列表,如果没有找到匹配的,则返回空列表。

 

注意: match 和 search 是匹配一次 findall 匹配所有。

 

import re

a = "123abc456"
print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(0))  # 123abc456,返回整体
print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(1))  # 123
print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(2))  # abc
print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).group(3))  # 456
print(re.search("([0-9]*)([a-z]*)([0-9]*)", a).groups())  # ('123', 'abc', '456')


打印结果:

123abc456
123
abc
456
('123', 'abc', '456')

正则表达式中的三组括号把匹配结果分成三组

group() 同group(0)就是匹配正则表达式整体结果
group(1) 列出第一个括号匹配部分,group(2) 列出第二个括号匹配部分,group(3) 列出第三个括号匹配部分。
groups() 返回一个包含匹配的所有子组的元组 

 

标签:search,匹配,python,re,print,group,match
From: https://www.cnblogs.com/Avicii2018/p/17121145.html

相关文章

  • 【Redis 故障排查】「连接失败问题排查和解决」带你总体分析CPU及内存的使用率高问题
    主体内容Redis实例CPU使用率高问题排查和解决Redis实例内存使用率高问题排查和解决Redis实例CPU使用率高问题排查和解决问题现象Redis实例CPU使用率短时间内冲高。CPU过高可......
  • CVE-2023-0669 GoAnywhereMFT反序列化漏洞复现
    免责声明文中提到的所有技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途,否则产生的一切后果自行承担,与本文作者无关!GoAnywhereMFTGoAnywher......
  • AWS Lambda 查询 Redshift Serverless
    在应用程序中,经常在Lambda中调用redshiftdataapi去查询redshiftserverless的数据,以下描述具体实现过程:1:给Lambda创建一个执行Lambda的IAMRole,并具有访问redshift......
  • redis面试
    1.redis面试 1.redis的过期键删除策略  redis是key-value的数据库,我们可以设置Redis中缓存的key的过期时间,Redis的过期策略是指Redis中缓存的key过期了,Redis如......
  • .Net Core(.Net6)创建grpc
    1.环境要求.Net6,VisualStudio2019以上官方文档:https://learn.microsoft.com/zh-cn/aspnet/core/tutorials/grpc/grpc-startNetFramework版本:https://www.cnblog......
  • 使用 vuepress + gitee pages 搭建静态网站
    VuePress(v1):https://v1.vuepress.vuejs.org/zh/guide/shell脚本:npm构建和推送docs/.vuepress/dist到远程分支if[!-epackage.json];thenecho'请在package......
  • SharePoint Online 根据已存在列表创建列表
    前言在SharePointOnline的使用中,根据已经存在的列表进行列表创建,是经常的操作。尤其,当我们在一个租户上创建不同SharePoint站点作为开发、测试、生产环境的时候......
  • SharePoint Online 根据Excel文件创建列表
    前言在SharePointOnline的使用中,根据Excel文件进行列表创建,是经常的操作。尤其,当我们在一个Excel上设计了站点结构的时候。正文1.在网站内容页面中,点......
  • Python 异步: 当前和正在运行的任务(9)
    我们可以反省在asyncio事件循环中运行的任务。这可以通过为当前运行的任务和所有正在运行的任务获取一个asyncio.Task对象来实现。1.如何获取当前任务我们可以通过......
  • malloc、calloc、realloc的区别
    malloc、calloc、realloc的区别1、C语言跟内存分配方式<1>从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在.例如全局变量、stat......