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 相关文章推荐
Python3中的列表,元组,字典,字符串相关知识小结
Nov 10 Python
python机器人行走步数问题的解决
Jan 29 Python
用Python下载一个网页保存为本地的HTML文件实例
May 21 Python
django请求返回不同的类型图片json,xml,html的实例
May 22 Python
python用户评论标签匹配的解决方法
May 31 Python
Python/ArcPy遍历指定目录中的MDB文件方法
Oct 27 Python
Python从文件中读取数据的方法讲解
Feb 14 Python
对python3 Serial 串口助手的接收读取数据方法详解
Jun 12 Python
SpringBoot实现登录注册常见问题解决方案
Mar 04 Python
keras中的卷积层&池化层的用法
May 22 Python
谈谈python垃圾回收机制
Sep 27 Python
Python中Qslider控件实操详解
Feb 20 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 INI配置文件的解析实现分析
2011/01/04 PHP
php查询whois信息的方法
2015/06/08 PHP
PHP判断上传文件类型的解决办法
2015/10/20 PHP
PHP操作FTP类 (上传、下载、移动、创建等)
2016/03/31 PHP
Yii 2.0实现联表查询加搜索分页的方法示例
2017/08/02 PHP
PHP实现UTF8二进制及明文字符串的转化功能示例
2017/11/20 PHP
PHP程序守护进程化实现方法详解
2020/07/16 PHP
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
jQuery让控件左右移动的三种实现方法
2013/09/08 Javascript
PHP中CURL的几个经典应用实例
2015/01/23 Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
2015/05/07 Javascript
理解JavaScript的变量的入门教程
2015/07/07 Javascript
用js动态添加html元素,以及属性的简单实例
2016/07/19 Javascript
Javascript之面向对象--方法
2016/12/02 Javascript
js实现图片切换(动画版)
2016/12/25 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
Nodejs+angularjs结合multiparty实现多图片上传的示例代码
2017/09/29 NodeJs
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
javascript实现考勤日历功能
2018/11/29 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
vue 获取url里参数的两种方法小结
2020/11/12 Javascript
python中__call__方法示例分析
2014/10/11 Python
跟老齐学Python之Import 模块
2014/10/13 Python
Python设计模式之代理模式简单示例
2018/01/09 Python
python多任务及返回值的处理方法
2019/01/22 Python
int在python中的含义以及用法
2019/06/27 Python
对Django中内置的User模型实例详解
2019/08/16 Python
使用 PyTorch 实现 MLP 并在 MNIST 数据集上验证方式
2020/01/08 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
HTML5中indexedDB 数据库的使用实例
2017/05/11 HTML / CSS
商场拾金不昧表扬信
2014/01/13 职场文书
《东方明珠》教学反思
2014/04/20 职场文书
关于实现中国梦的心得体会
2016/01/05 职场文书
django中websocket的具体使用
2022/01/22 Python
索尼ICF-5900W收音机测评
2022/04/24 无线电