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单链表实现代码实例
Nov 21 Python
Python中的fileinput模块的简单实用示例
Jul 09 Python
python selenium UI自动化解决验证码的4种方法
Jan 05 Python
基于python3实现socket文件传输和校验
Jul 28 Python
python opencv 图像拼接的实现方法
Jun 27 Python
决策树剪枝算法的python实现方法详解
Sep 18 Python
pycharm激活码快速激活及使用步骤
Mar 12 Python
Python Json数据文件操作原理解析
May 09 Python
python将数据插入数据库的代码分享
Aug 16 Python
python 简单的调用有道翻译
Nov 25 Python
python工具快速为音视频自动生成字幕(使用说明)
Jan 27 Python
python中的None与NULL用法说明
May 25 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
S900/ ETON E1-XM 收音机
2021/03/02 无线电
PHP 面向对象 PHP5 中的常量
2010/05/05 PHP
php如何连接sql server
2015/10/16 PHP
php搜索文件程序分享
2015/10/30 PHP
php魔术方法功能与用法实例分析
2016/10/19 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
爆炸式的JS圆形浮动菜单特效代码
2010/03/03 Javascript
JS页面延迟执行一些方法(整理)
2013/11/11 Javascript
JS实现黑色大气的二级导航菜单效果
2015/09/18 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
利用js获取下拉框中所选的值
2016/12/01 Javascript
详解10分钟学会vue滚动行为
2017/09/21 Javascript
JS验证输入的是否是数字及保留几位小数问题
2018/05/09 Javascript
vuejs实现标签选项卡动态更改css样式的方法
2018/05/31 Javascript
浅谈在vue中使用mint-ui swipe遇到的问题
2018/09/27 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
python list 合并连接字符串的方法
2013/03/09 Python
python装饰器初探(推荐)
2016/07/21 Python
python实现多线程抓取知乎用户
2016/12/12 Python
分享一个可以生成各种进制格式IP的小工具实例代码
2017/07/28 Python
Python实现改变与矩形橡胶的线条的颜色代码示例
2018/01/05 Python
python实现一组典型数据格式转换
2018/12/15 Python
Python字符串的全排列算法实例详解
2019/01/07 Python
Python3并发写文件与Python对比
2019/11/20 Python
使用pyqt5 tablewidget 单元格设置正则表达式
2019/12/13 Python
Python多进程编程multiprocessing代码实例
2020/03/12 Python
python的Jenkins接口调用方式
2020/05/12 Python
Python中如何引入第三方模块
2020/05/27 Python
HTML5 DeviceOrientation实现手机网站摇一摇功能代码实例
2015/04/24 HTML / CSS
俄罗斯马克西多姆家居用品网上商店:Максидом
2020/02/06 全球购物
建筑工程管理专业自荐信范文
2013/12/28 职场文书
邮政竞聘演讲稿
2014/09/03 职场文书
我的职业生涯规划:打造自己的运动帝国
2014/09/18 职场文书
班主任开场白
2015/06/01 职场文书
解析laravel使用workerman用户交互、服务器交互
2021/04/28 PHP
详解Python中__new__方法的作用
2022/03/31 Python