第11.2节 Python 正则表达式支持函数概览

Python re模块介绍 Python中转义字符 正则表达式使用反斜杠” \ “来代表特殊形式或用作转义字符,这里跟Python的语法冲突,因此,Python用” \\\\ “表示正则表达式中的” \ “,因为正则表达式中如果要匹配” \ “,需要用\来转义,变成” \\ “,而Python语法中又需要对字符串中每一个\进行转义,所以就变成了” \\\\ “。 上面的写法是不是觉得很麻烦,为了使正则表达式具有更好的可读性,Python特别设计了原始字符串(raw string),需要提醒你的是,在写文件路径的时候就不要使用raw string了,这里存在陷阱。raw string就是用’r’作为字符串的前缀,如 r”\ 立即下载

为了大家熟悉re模块匹配文本的处理,本节将概要介绍与此处理有关的几个主要函数,提供了如下主要函数:
在这里插入图片描述
以上函数中的部分的三个重要参数说明如下:

  1. pattern都是代表匹配规则的模式字符串,string代表要搜索的文本;
  2. flags搜索标记(也称为搜索标签)是匹配的一些其他限定,值可以是以下任意常量,可以通过位的OR操作( |操作符)来组合使用:
    1)re.A、re.ASCII:二者含义相同,对应数值256,表示让 \w, \W, \b, \B, \d, \D, \s 和 \S 只匹配ASCII,而不是Unicode。这只对Unicode样式有效,会被byte样式忽略。
    2)re.DEBUG:对应数值128,显示编译时的debug信息
    3)re.I、re.IGNORECASE:对应数值2,表示忽略大小写匹配,如表达式如 [A-Z] 也会匹配小写字符。
    4)re.L、re.LOCALE:对应数值4,由当前语言区域决定 \w, \W, \b, \B 和大小写敏感匹配。这个标记只能对byte样式有效。这个标记不推荐使用,因为语言区域机制很不可靠,它一次只能处理一个 "习惯”,而且只对8位字节有效
    5)re. M、re. MULTILINE:对应数值8,设置以后,样式字符 ‘^’ 匹配字符串的开始,和每一行的开始(换行符后面紧跟的符号);样式字符 ‘ ′ 匹 配 字 符 串 尾 , 和 每 一 行 的 结 尾 ( 换 行 符 前 面 那 个 符 号 ) 。 默 认 情 况 下 , ’ ’ 匹 配 字 符 串 头 , ′ ' 匹配字符串尾,和每一行的结尾(换行符前面那个符号)。默认情况下,’^’ 匹配字符串头,' ′匹配字符串尾,和每一行的结尾(换行符前面那个符号)。默认情况下,’’匹配字符串头,′’ 匹配字符串尾。
    6)re.S、re.DOTALL:对应数值16,让 ‘.’ 特殊字符匹配任何字符,包括换行符;如果没有这个标记,’.’ 就匹配 除了 换行符的其他任意字符。
    7)re.Xre.VERBOSE:对应数值64,这个标记允许你编写更具可读性更友好的正则表达式。通过分段和添加注释。空白符号会被忽略,除非在一个字符集合当中或者由反斜杠转义,或者在 *?, (?: or (?P<…> 分组之内。当一个行内有 # 不在字符集和转义序列,那么它之后的所有字符都是注释。
    re.VERBOSE 标志有几种效果。 正则表达式中的 不是 在字符类中的空格将被忽略。 这意味着表达式如 dog | cat 等同于不太可读的 dog|cat ,但 [a b] 仍将匹配字符 ‘a’ 、 ‘b’ 或空格。 此外,你还可以在正则中放置注释;注释从 # 字符扩展到下一个换行符。 当与三引号字符串一起使用时,这使正则的格式更加整齐:
pat = re.compile(r"""
 \s*                 # Skip leading whitespace
 (?P<header>[^:]+)   # Header name
 \s* :               # Whitespace, and a colon
 (?P<value>.*?)      # The header's value -- *? used to
                     # lose the following trailing whitespace
 \s*$                # Trailing whitespace to end-of-line
""", re.VERBOSE)

这更具有可读性:

本节老猿引入了re模块的几个主要函数,对三个共性参数进行了统一说明,这样后面详细介绍这些函数时无需单独介绍。
老猿Python,跟老猿学Python!
博客地址:https://blog.youkuaiyun.com/LaoYuanPython

请大家多多支持,点赞、评论和加关注!谢谢!

第1章 环境准备 本章是 Kubernetes 高可用集群部署的前置基础环境配置,所有节点必须严格按顺序执行。主要内容包括:节点规划(IP、角色、配置要求)、VMware 克隆节点环境清理(解决 MAC 地址和主机名冲突)、统一工作目录创建、主机名与 hosts 解析配置、系统基础升级、防火墙与 swap 关闭、内核模块加载(overlay、br_netfilter、ip_vs)、网络参数优化(IP 转发、桥接过滤)、时间同步配置等。Ubuntu 24.04 内核 6.8+ 原生支持 eBPF 和 IPVS,无需手动升级内核 阅读详情

相关推荐

ArcGIS遥感影像分类技术在植被覆盖度计算中的应用

本文详细介绍了如何利用ArcGIS遥感影像分类技术高效计算植被覆盖度。通过数据准备、监督与非监督分类方法详解,并结合制表分析与栅格计算器进行面积统计,最终实现从分类图到覆盖度百分比的全流程自动化与可视化,为生态评估与规划提供精准数据支持。

weixin_29091445的博客 419

python对正则表达式的支持

之前,我们曾经介绍过正则表达式如何在介绍linux中grep命令的时候,顺带说明了正则表达式相关语法。 本文,我们来看下如何在python中实现对正则化的处理。 1. python中re模块的用法 python通过re模块实现对正则化的解析。具体常用函数,如下表所示。之外,如果函数范围的是正则表达式对象,对象同样调用这些自己的函数。 如果一个pattern需要重复使用,我们应该调用compile生成对应re对象。 其中前几个函数很常用。 2. 补充re的语法 除了在grep中提到的一些常用的字符含义之外,

miya的博客 333

告别抖动与滞后:深入博能传动伺服DSC功能,用105报文提升多轴同步性能

本文深入解析博能传动伺服DSC功能如何通过105报文实现多轴同步性能提升,有效解决工业自动化中的抖动与滞后问题。详细介绍了DSC技术原理、105报文实现机制及多轴同步工程实践,帮助工程师优化伺服系统性能,实现绝对齿轮同步。

weixin_30394981的博客 184

Python支持的正则表达式元字符和语法

Python支持的正则表达式元字符和语法   转自:http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例。本文的内容不包括如何编写高效的正则表达式、如何优化正则表达式,这些主题请查看其他教

悠悠的博客 2223

深入解析ROS 2 Control:从硬件抽象到实时控制的机器人框架实践

本文深入解析了ROS 2 Control机器人控制框架,阐述了其如何通过硬件抽象、控制器管理和实时性保障,解决机器人开发中硬件与软件紧耦合的痛点。文章详细剖析了其三层核心架构与数据流,并通过C++/Python代码示例演示了硬件接口的实现,最后提供了URDF配置、启动文件编写指南以及动态控制器管理、实时优化等高级应用与实战避坑技巧。

mqtt6iot的博客 620

Python气象数据处理实战:用PyCINRAD轻松绘制雷达PPI图像(附避坑指南)

本文详细介绍了如何使用Python库PyCINRAD处理中国CINRAD系列天气雷达的基数据,并绘制专业的PPI图像。内容涵盖从环境配置、数据读取、核心绘图到高级定制与批量处理的完整流程,并针对安装依赖、中文乱码、数据范围等常见问题提供了实用的避坑指南,帮助气象工作者高效完成雷达数据可视化。

dog123的博客 222

re模块的介绍

目录1:正则表达式2:正则表达式的用途3:重点3.1普通字符3.2:match()函数注意:3.3:元字符3.4:预定义匹配字符集3.5:重复匹配3.6:位置匹配和非贪婪匹配4:爬虫的使用 1:正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑 可是说使用一组字符串来对另一组字符串来进行杀筛选和过滤的作用 可以把正则表的式比作一个筛子 2:正则表达式的用途 爬虫 表达验证

- 青崖 - 3641

Android dex, odex, oat, vdex, art文件介绍

下图可以简化将Java源转换为OAT的过程: .dex Dalvik虚拟机字节码文件 .vdex 其中包含APK的未压缩DEX代码,以及一些旨在加快验证速度的元数据 .odex .oat // JIT,Just-in-time,即时编译,边运行边编译; // AOT,Ahead Of Time,提前编译,指运行前编译。 其中包含APK中已经过AOT编译的方法代码。 原始DEX文件(例如classes.dex)被转换为另一个包含本机代码的文件。这个新文件通常具有.odex。.oat扩展名,并由ELF格式

he980725866的博客 3619

详解re模块

re模块

weixin_55613512的博客 1644

极速建站!用1Panel面板一键部署Halo博客的保姆级教程 | 企业官网/个人博客搭建教程

个人博客是一种在互联网上发布自己的文章、图片、视频等内容的平台,通常以文字为主要形式,但也可以包含其他媒体。个人博客的用途非常广泛。它可以用来记录博主的日常生活、分享自己的知识和经验、展示自己的作品和技能,以及交流自己的观点和看法。通过个人博客,博主可以与读者建立联系,分享自己的见解和体验,同时也可以从读者那里获得反馈和建议。

zeruns的博客 1831

南方电网专业面试题(电气类-继电保护)(目录)

南方电网专业面试题(电气类-继电保护)(目录) 这些面试题围绕继电保护的基本概念、工作原理、分类、性能要求,以及变压器、断路器、母线保护、自动重合闸等电力系统关键设备的保护机制和操作原则展开,旨在评估应聘者对电力系统保护和控制策略的深入理解和实际应用能力。

weixin_44808274的博客 2158

第11.23节 Python 中re模块的搜索替换功能:sub及subn函数

一、 引言 在《第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer》重点介绍了几个搜索函数,除了搜索,re模块也提供搜索并替换功能,这个就是re模块的sub函数。 二、 语法释义 调用语法: re.sub(pattern, repl, string, count=0, flags=0) re.subn(pattern,...

老猿Python 3498

量化 insider 爆料! 散户打板必亏?(打板必看!量化资金如何“隔日砸盘”收割散户)

量化开发 insider 爆料💥 散户追的涨停板📉,可能是机构故意做的陷阱!本文从技术视角拆解“涨停陷阱”,帮你看清市场真实逻辑🧠。

XiaoqiangClub的博客 450

第11.25节 Python正则表达式编译re.compile及正则对象使用

一、 引言 在《第11.2节 Python 正则表达式支持函数概览》介绍了re模块的主要函数,在《第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer》重点介绍了几个搜索函数。这些介绍的搜索函数都是直接使用正则表达式去匹配搜索文本,实际上re模块还支持将正则表达式先编译再搜索匹配,这种先编译后搜索在同一个正则表达式多次去执行...

老猿Python 3205

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

第11.22节 Python 中re模块的字符串分割器:split函数

一、 引言 在《第11.2节 Python 正则表达式支持函数概览》介绍了re模块的主要函数,在《第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer》重点介绍了几个搜索函数,后续章节将介绍re模块的其他函数,本节先介绍re.split函数的功能。 二、 语法释义 调用语法: re.split(pattern, strin...

老猿Python 2745

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

第11.15节 Python正则表达式转义符定义的特殊序列

一、 引言 在前面《第11.13节 Python正则表达式的转义符”\”功能介绍》介绍了正则表达式转义符’’,只不过当时作为转义符主要是用于在正则表达式中表示元字符自身的需要进行的转义。实际上,除了元字符使用转义符外,Python还支持由 ‘’ 和一个ASCII数字或ASCII字母字符组成的特殊序列,这些特殊代表特殊的含义。 如果’'后面跟的字符不是ASCII数字或者ASCII字母,那么正则样式将...

老猿Python 5160

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

python正则表达式compile_第11.25节 Python正则表达式编译re.compile及正则对象使用

一、引言在《第11.2节 Python 正则表达式支持函数概览》介绍了re模块的主要函数,在《第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer》重点介绍了几个搜索函数。这些介绍的搜索函数都是直接使用正则表达式去匹配搜索文本,实际上re模块还支持将正则表达式先编译再搜索匹配,这种先编译后搜索在同一个正则表达式多次去执行匹配...

weixin_40003767的博客 467

python中sub函数_第11.23节 Python 中re模块的搜索替换功能:sub及subn函数

二、语法释义调用语法:re.sub(pattern, repl, string, count=0, flags=0)re.subn(pattern, repl, string, count=0, flags=0)参数:1)pattern:匹配的正则表达式;2)string:搜索文本字符串3)repl:替换对象,将搜索文本中和模式匹配的字符串替换为repl对象对应的内容,repl可以是,或者是字符串...

weixin_39761696的博客 454

python compile正则_第11.25节 Python正则表达式编译re.compile及正则对象使用

一、引言在《第11.2节 Python 正则表达式支持函数概览》介绍了re模块的主要函数,在《第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer》重点介绍了几个搜索函数。这些介绍的搜索函数都是直接使用正则表达式去匹配搜索文本,实际上re模块还支持将正则表达式先编译再搜索匹配,这种先编译后搜索在同一个正则表达式多次去执行匹配...

weixin_39777543的博客 136

Python标准库概览

Python标准库为开发者提供了广泛的功能和工具,从基本的文件操作到复杂的网络通信和数据分析任务,都可以通过标准库中的模块和函数来实现。然而,这仅仅是冰山一角,Python还有大量的第三方库和框架可供使用,它们扩展了Python的应用范围并提供了更多的功能和工具。无论是Web开发、数据分析、机器学习还是自动化脚本编写等领域,Python都是一个强大而灵活的选择。因此,熟练掌握Python标准库和常用的第三方库对于Python开发者来说是非常重要的。

Python老吕的博客 1223

python正则表达式里转义字符_第11.15节 Python正则表达式转义符定义的特殊序列

一、引言在前面《第11.13节 Python正则表达式的转义符”\”功能介绍》介绍了正则表达式转义符'\',只不过当时作为转义符主要是用于在正则表达式中表示元字符自身的需要进行的转义。实际上,除了元字符使用转义符外,Python还支持由'\'和一个ASCII数字或ASCII字母字符组成的特殊序列,这些特殊代表特殊的含义。 如果'\'后面跟的字符不是ASCII数字或者ASCII字母,那么正则样式将直...

weixin_39810856的博客 340

第11.11节 Python正则表达式的指定重复次数匹配模式及元字符”{}”功能介绍

在《第11.8节 Pytho正则表达式的重复匹配模式及元字符“?”、 “”、 “+”功能介绍》和《第11.10节 Pytho正则表达式的非贪婪模式的重复匹配:’?’, ‘+?’,和 ‘??’ 》中介绍了’’、’?’、’+’、’+?’、 ‘?’、 '??'是重复匹配,包括:0-1次、0-n次、1-n次,在Python中还可以通过元字符描述符“{}”(大括号)指定重复的最大次数和最小次数。语法如下: ...

老猿Python 6056

第11.13节 Python正则表达式的转义符”\”功能介绍

为了支持特殊元字符在特定场景下能表示自身而不会被当成元字符进行匹配出来,可以通过字符集或转义符表示方法来表示,字符集表示方法前面在《第11.4节 Python正则表达式搜索字符集匹配功能及元字符”[]”介绍》进行了介绍,本节介绍转义符表示方法。 在re模块中,为了让元字符能表示自身,可以在元字符前面增加转义符反斜杠“\”,这个转义符的使用可以看到与Python字符串的转义符是完全相同的。re模块转...

老猿Python 1412

第11.21节 Python 中正则表达式的其他扩展功能

一、 引言 在《第11.17节 Python 正则表达式扩展功能:命名组功能及组的反向引用》中老猿介绍了组匹配模式的命名组功能及引用组功能,这两者都是正则表达式的扩展功能,其实在re模块中正则表达式的扩展功能非常多,所有扩展功能都是在左括号后面跟问号“?”来表示,具体扩展功能是要看问号后面的字符来确认,如“P”表示组名相关扩展。 下面老猿将未介绍的主要正则表达式扩展功能在本节进行介绍,下面介绍的扩...

老猿Python 976

第11.17节 Python 正则表达式扩展功能:命名组功能及组的反向引用

一、 引言 在《第11.16节 Python正则元字符“()”(小括号)与组(group)匹配模式》介绍了组匹配模式,在一个正则表达式内可以定义多个组,每个组都有一个顺序分配的序号,并且在代表匹配结果的匹配对象中能通过组序号去访问每个组的匹配结果。除了这种组序号访问方式之外,re模块还支持在匹配模式串中给组命名,并通过组名去访问组相关匹配数据,这就是正则表达式处理的命名组功能。 二、 语法 组命名...

老猿Python 1703
上一篇: 第11.1节 Python正则表达式概述
下一篇: 第11.3节 Python正则表达式搜索支持函数search、match、fullmatch、findall、finditer
LaoYuanPython
LaoYuanPython 2020年博客之星Top3 2020年博客之星Top3 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄8年 15万+粉丝 1324原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LaoYuanPython

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值