python 正则表达式参数替换实例详解


Posted in Python onJanuary 17, 2020

正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。

Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式。

re 模块使 Python 语言拥有全部的正则表达式功能。

compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象。该对象拥有一系列方法用于正则表达式匹配和替换。

re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数。

本章节主要介绍python 正则表达式参数替换。

使用正则表达式替换字典数据

${memberID} 对应的正则表达式 '\$\{.*\}'

解释:\$ 转义替换字符串中 $

 \{ 转义替换字符串中 {

 . 除了\n中的任意单个自符

 * 匹配*前面的字符零次或者多次

 \} 转义替换字符串中 }

dict = {"memberId":"${memberID}","password":"123456","loanId":"${loanId}","amount":"-100"}
data = {"memberId":10001, "loanId":1}
for param in dict:
  value = dict[param]
  if param in data.keys():
    s = str(data[param])
  newValue = re.sub('\$\{.*\}', s, value)
  dict[param] = newValue
print(dict)

扩展:

正则表达式常用规则

^ 匹配字符串的开头,指定字符串必须以什么开头
$ 匹配字符串结尾,指定字符串以$前的字符结尾
+ 匹配前面的字符1次或者多次  >= 1
{m} 指定匹配字符的次数
? 匹配前面字符0次或者1次

 python中通过re模块来处理正则表达式。re模块的常用方法如下:

re.match(re规则,字符串,修饰符):从头开始匹配。从字符串的第一个字符开始匹配,如果第一个字符不匹配规则,那么匹配失败。

re.search(re规则,字符串,修饰符):匹配包含。不要求从字符串的第一个字符就匹配。只要字符串当中有匹配该规则的,则就匹配成功。

re.findall(re规则,字符串, 修饰符):把所有匹配的字符放在列表中并返回。

re.sub(re规则,替换串,被替换串,替换次数,修饰符):匹配字符并替换。

总结

以上所述是小编给大家介绍的python 正则表达式参数替换实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python 正则式 概述及常用字符
May 07 Python
实例讲解Python中函数的调用与定义
Mar 14 Python
详解Python中表达式i += x与i = i + x是否等价
Feb 08 Python
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
Jun 22 Python
python操作excel的方法
Aug 16 Python
Python3中lambda表达式与函数式编程讲解
Jan 14 Python
python requests抓取one推送文字和图片代码实例
Nov 04 Python
python pygame实现挡板弹球游戏
Nov 25 Python
Django框架models使用group by详解
Mar 11 Python
pandas数据拼接的实现示例
Apr 16 Python
keras实现VGG16方式(预测一张图片)
Jul 07 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
Aug 17 Python
Python函数式编程实例详解
Jan 17 #Python
python实现tail -f 功能
Jan 17 #Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 #Python
python对象销毁实例(垃圾回收)
Jan 16 #Python
python读取dicom图像示例(SimpleITK和dicom包实现)
Jan 16 #Python
.dcm格式文件软件读取及python处理详解
Jan 16 #Python
用python解压分析jar包实例
Jan 16 #Python
You might like
php5.2.0内存管理改进
2007/01/22 PHP
[原创]效率较高的php下读取文本文件的代码
2008/07/02 PHP
深入理解PHP之数组(遍历顺序)  Laruence原创
2012/06/13 PHP
Laravel 5 学习笔记
2015/03/06 PHP
php将字符串全部转换成大写或者小写的方法
2015/03/17 PHP
Ubuntu12下编译安装PHP5.3开发环境
2015/03/27 PHP
php文件上传类完整实例
2016/05/14 PHP
如何修改yii2.0自带的user表为其它的表
2017/08/01 PHP
PHP中的异常处理机制深入讲解
2020/11/10 PHP
限制文本字节数js代码
2007/03/06 Javascript
jQuery为iframe的body添加click事件的实现代码
2011/04/07 Javascript
JS函数实现动态添加CSS样式表文件
2012/12/15 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
怎么判断js脚本加载完成
2014/02/28 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
jQuery插件PageSlide实现左右侧栏导航菜单
2015/04/12 Javascript
关于验证码在IE中不刷新的快速解决方法
2016/09/23 Javascript
javascript简单链式调用案例分析
2017/05/10 Javascript
BootStrap selectpicker后台动态绑定数据
2017/06/01 Javascript
在vue中,v-for的索引index在html中的使用方法
2018/03/06 Javascript
微信小程序拼接图片链接无底洞深入探究
2019/09/03 Javascript
JS插入排序简单理解与实现方法分析
2019/11/25 Javascript
JS实现小星星特效
2019/12/24 Javascript
JS函数进阶之prototy用法实例分析
2020/01/15 Javascript
微信小程序语音同步智能识别的实现案例代码解析
2020/05/29 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
python学习数据结构实例代码
2015/05/11 Python
独特的python循环语句
2016/11/20 Python
python中in在list和dict中查找效率的对比分析
2018/05/04 Python
python利用小波分析进行特征提取的实例
2019/01/09 Python
django框架模板中定义变量(set variable in django template)的方法分析
2019/06/24 Python
L’urv官网:精品女性运动服品牌
2019/07/07 全球购物
“向国旗敬礼”活动策划方案(4篇)
2014/09/27 职场文书
会计岗位职责范本
2015/04/02 职场文书
幼儿园辞职信
2015/05/13 职场文书
nginx内存池源码解析
2021/11/20 Servers