正则表达 前后替换_巧用正则表达式,完成接口参数替换

4eefb435ea4e2352d595db8ad4de575d.gif

最近有同学找我咨询一个参数替换的问题,首先描述下场景: 

需要参数化的数据如下所示:

3080765e61f3bf4d556a784a79f115bd.png

这个时候如果利用单纯的if判断和字符串的find和replace方法,做起来是非常不明智的!代码量也非常多,也非常容易的混淆! 

这个时候,如果引入正则表达式,就可以非常轻松的解决这个问题!!

昂~~那么利用场景的话,就不一一描述了,我们自动化课堂上见!先分步骤分模块了解下正则表达式这个新鲜玩意!

01  正则是什么

用一句通俗易懂的话来说:符合一定规则的字符来匹配我们自己想要的内容!

02 如何学习正则

python有一个专门的正则模块re,终于如何使用这些,我当然不会说啦~

网络上资源很多,but,给大家安利下我们小简老师的博客,有详细的讲解这个正则: 

简佬博客地址,请戳我!! 不过这个博客未完待续,等着小简老师更新吧!

03 我们实用的场景步骤

1、准备一个get_data模块,里面有个GetData类,代码如下,存储我们各类想要的数据属性值:

74ceb7f76cf05fd55014c6a0f747774f.png

2、要替换的参数,我们先举个例子,如下所示:

2f0dd881d3828b34fbc342379af211d2.png

正则表达式是:\${(.*?)}

重点普及以下search函数093652d63ac3a891428c80bf274ded14.png

re.search("\${(.*?)}",s) :该函数的作用是会返回遇到的第一个符合的匹配值,如果不存在就返回None

re.search("\${(.*?)}",s).group():group()等同于group(0)函数,返回的是匹配的整个字符串

re.search("\${(.*?)}",s).group(1):group(1)函数,返回的是匹配的第一个括号里面的字符串

我们如何完成参数里面的正则匹配呢?代码如下:

6fe1c9a3519825d200c303603d80d3e5.png

b8e0286a0d622454fdafbabdfaa8b64b.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值