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实现竖排打印传单手机号码易撕条
Mar 16 Python
Python检测一个对象是否为字符串类的方法
May 21 Python
Python中的推导式使用详解
Jun 03 Python
Python 实现一个颜色色值转换的小工具
Dec 06 Python
对python中的six.moves模块的下载函数urlretrieve详解
Dec 19 Python
对Python中创建进程的两种方式以及进程池详解
Jan 14 Python
python批量下载抖音视频
Jun 17 Python
解决pyqt5异常退出无提示信息的问题
Apr 08 Python
Python figure参数及subplot子图绘制代码
Apr 18 Python
pyMySQL SQL语句传参问题,单个参数或多个参数说明
Jun 06 Python
python爬虫工具例举说明
Nov 30 Python
Python与C++中梯度方向直方图的实现
Mar 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
PHP中的string类型使用说明
2010/07/27 PHP
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
使用PHP Socket 编程模拟Http post和get请求
2014/11/25 PHP
PHP对文件夹递归执行chmod命令的方法
2015/06/19 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
2017/06/07 PHP
微信开发之获取JSAPI TICKET
2017/07/07 PHP
用javascript连接access数据库的方法
2006/11/17 Javascript
jquery ajax执行后台方法
2010/03/18 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
2013/01/27 Javascript
js网页中的(运行代码)功能实现思路
2013/02/04 Javascript
如何使用Javascript正则表达式来格式化XML内容
2013/07/04 Javascript
JS实现数字格式千分位相互转换方法
2016/08/01 Javascript
详解vue.js+UEditor集成 [前后端分离项目]
2017/07/07 Javascript
vue 实现input表单元素的disabled示例
2019/10/28 Javascript
JS动态显示倒计时效果
2019/12/12 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
[01:02:03]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS VG
2014/05/26 DOTA
[01:18:21]EG vs TNC Supermajor小组赛B组败者组第一轮 BO3 第一场 6.2
2018/06/03 DOTA
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
浅谈numpy数组中冒号和负号的含义
2018/04/18 Python
Python抽象和自定义类定义与用法示例
2018/08/23 Python
python实现汉诺塔算法
2021/03/01 Python
Python实现八皇后问题示例代码
2018/12/09 Python
详解Python3 基本数据类型
2019/04/19 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
Python图像处理PIL各模块详细介绍(推荐)
2019/07/17 Python
django 自定义过滤器(filter)处理较为复杂的变量方法
2019/08/12 Python
python矩阵运算,转置,逆运算,共轭矩阵实例
2020/05/11 Python
HTML5 Canvas绘制文本及图片的基础教程
2016/03/14 HTML / CSS
美国的Eastbay旗下的运动款子品牌:Final-Score
2018/01/01 全球购物
大学生职业生涯规划书模版
2013/12/30 职场文书
入党综合考察材料
2014/06/02 职场文书
银行大堂经理培训心得体会
2016/01/09 职场文书
《七月的天山》教学反思
2016/02/19 职场文书
Kubernetes部署实例并配置Deployment、网络映射、副本集
2022/04/01 Servers
Django框架中视图的用法
2022/06/10 Python