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

Posted 柠檬班软件测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了巧用正则表达式,完成接口参数替换相关的知识,希望对你有一定的参考价值。



最近给Python11期的小朋友们上课,遇到了一个参数替换的问题,首先描述下场景: 需要参数化的数据如下所示:

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


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


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


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


01  正则是什么


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

02 如何学习正则


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


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



03 我们实用的场景步骤

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

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


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

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


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


重点普及以下search函数巧用正则表达式,完成接口参数替换

 

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


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


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


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

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


练习题


如果是下面字符串,你打算怎么去完成替换呢?



 {"memberId":"${memberID}","password":"123456","loanId":"${loanId}","amount":"-100"} 




练习题答案

加开开老师微信: 1397658968

暗号:答案

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





-推荐阅读-


点击文字即可阅读全文



 




- END -


今天的分享就到这里了

看完本文有收获?请转发分享给更多人





后台回复“打卡”免费领取柠檬班书籍


            

以上是关于巧用正则表达式,完成接口参数替换的主要内容,如果未能解决你的问题,请参考以下文章

巧用SublimeText和正则表达式,让操作飞起来!

python五十八课——正则表达式(替换)

python 正则表达式参数替换

怎样用正则表达式判断字符串中的中文数

notepad正则怎么替换其中一部分

C语言怎么用正则表达式