位置: 编程技术 - 正文

Python 正则表达式的高级用法

编辑:rootadmin

推荐整理分享Python 正则表达式的高级用法,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

对于Python来说,学习正则就要学习模块re的使用方法。本文将展示一些大家都应该掌握的高级技巧。

编译正则对象

re.compile函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。用法上略有区别,举个例子, 匹配一个字符串可用如下方式:

如果使用compile,将变成:

为什么要这么用呢?其实就是为了提高正则匹配的速度,重复利用正则表达式对象。我们对比一下2种方式的效率:

可以看到第二种方式要快很多。在实际的工作中你会发现越多的使用编译好的正则表达式对象,效果就越好。

分组(group)

你可能已经见过对匹配的内容进行分组的用法了:

通过对要匹配的对象添加括号,就可以精确的对应符合的结果了。我们还可以进行嵌套的分组:

分组可以满足需求,但是有时候可读性很差,那可以对分组进行命名:

现在可读性就非常高了。

字符串匹配

Python 正则表达式的高级用法

学过sed的同学可能见过如下替换用法:

这个1表示前面正则匹配到的结果。上面的sed也就是给匹配到的结果加上中括号。

在re模块中也存在这样的用法:

用命名分组也是可以的:

附近匹配(Look around)

re模块也支持附近匹配,看看例子就懂了:

正则匹配的时候使用函数

之前我们看到的大部分内容都是匹配的是一个表达式,但是有时候需求要复杂得多,尤其是在替换的时候。

举个例子,通过Slack的API能获取聊天记录,比如下面这句:

其中<@U1EAT8MG9>和<@U0K1MFZ>是2个真实的用户,但是被Slack封装了,需要通过其他接口获取这个对应关系,

其结果类似这样:

在解析对应关系之后,还希望吧尖括号也去掉,替换后的结果是「@xiaoming, @laolin 嗯 确实是这样的 」

用正则怎么实现呢?

所以pattern当然也可以是一个函数

Python常用库推荐 IPython+ptpython,完美体验首先是安装pipinstallipythonptpython然后使用ptipython有什么好处1.IPython是非常强大的Python增强工具2.ptpython提供了类似IDE的自动补全功

Python正则表达式使用范例分享 作为一个概念而言,正则表达式对于Python来说并不是独有的。但是,Python中的正则表达式在实际使用过程中还是有一些细小的差别。本文是一系列关于Py

python中redis的安装和使用 python下redis安装用python操作redis数据库,先下载redis-py模块下载地址

标签: Python 正则表达式的高级用法

本文链接地址:https://www.jiuchutong.com/biancheng/383416.html 转载请保留说明!

上一篇:简单谈谈Python流程控制语句(python流数据)

下一篇:Python常用库推荐(python常用的库)

  • 坏账准备要写到明细账里面吗
  • 下列哪些收入为免税收入
  • 代开运输发票会不会造成重复征税
  • 旧设备出口增值税处理
  • 负债与所有者权益比率
  • 开发票怎么操作
  • 汇兑损益现金流量表列示
  • 按工程进度支付工程款怎么描述
  • 信用卡到账手续费
  • 会议费报销税务规定
  • 小规模纳税人增值税怎么算
  • 公司车辆的维修费挂什么科目
  • 融资租赁会计核算的一般原则是什么
  • 资助的开发经费可税前扣除吗
  • 固定资产明细账怎么填
  • 虚假会计凭证的处罚
  • 契税晚交有什么影响
  • 购入材料用于安装工程
  • 设备安装行业前景
  • 企业成立股东没有实际出资分录怎么写?
  • 出口供货企业
  • 企业办理跨境人民币收付需要办理名录登记吗
  • 工会经费税务局怎么收
  • 关于建筑工程发包与承包下列说法正确的是
  • 给职工买的意外险怎么做账
  • 资源税如何进行账务处理
  • 出口零税率是什么意思
  • 培训过程中出现的问题及解决办法
  • 金融服务收入如何做账
  • 业务宣传费和广告费计入什么科目
  • 应收款收不回账务处理
  • 对个体工商户个人的认识
  • 小规模纳税人一个月能开多少税票
  • 什么是会计凭证?会计凭证有哪些作用?
  • 支付银行贷款利息计入现金流量表
  • 房地产企业困境
  • wp网站迁移
  • 对违规送礼行为怎么处理
  • 业务招待费税务筹划案例
  • php数组函数实现机选双色球
  • PHP:mcrypt_module_is_block_algorithm()的用法_Mcrypt函数
  • 独立费用包括
  • react中路由有哪些常用组件
  • 如何查询数据库表空间
  • 计算机视觉项目论文
  • handsome主题破解
  • 税控盘减免税款会计分录
  • 没有到位的注资企业
  • 全年一次性奖金税率表2023
  • mysql的文件格式有哪些
  • php注册系统
  • 税费退库怎么做账
  • 企业进行股权转让前,必须先销什么户
  • 小企业会计准则适用于哪些企业
  • 计提和发放工资的会计科目
  • 劳务派遣公司差额征税怎么做账
  • 异地预缴怎么填写申报表
  • 应收账款的客户如何分析
  • 库存现金多出来怎么调账
  • 投资收益 增加
  • 小规模销售免税产品需要交税吗
  • MSsql每天自动备份数据库并每天自动清除log的脚本
  • windows7创建虚拟桌面
  • WIN10系统优化技巧
  • Internet Explorer 8(IE8)简体中文版de 卸载
  • 笔记本电脑自动断开
  • mac 地址栏
  • win单击变双击
  • linux文件权限的设置与修改
  • 一、Unity3D 5.0.1-示例项目“汽车游戏”的展示及开发准备
  • java中初始化顺序
  • 网页设计css文字居中
  • python根据ip获取主机名
  • 网络游戏数据包
  • mybatis框架执行流程
  • Metaio in Unity3d 教学--- 一. 搭建环境,运行官方案例
  • js中的?
  • python 举例
  • jquery页面布局
  • 鸿蒙2.0哪个版本续航好
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设