正则表达式的使用(3.提取两个不连续的变量)

正则表达式中提取两个不连续的变量
如图:响应返回的是一个列表,需要提取其中的两个字段,但是两个字段是不连续的
如果直接提取则会提取失败,如图:
 

 

所以需要改变一下正则表达式:"gatewayNo":"(.+?)",[.\s\S]+?"gatewayMac":"(.+?)"
在中间添加 [.\s\S]+? ,它表示去掉两个参数之间不需要的值、空格、换行;
提取出来之后,在后续使用中使用${gateway_g1}表示gatewayNo,以此类推

 

 

注意事项:在返回的列表中有一些值时没有引号的,所以在提取时的正则表达式需要注意引号和字段之间的分割符
如图:没有加逗号,提取出来的值是1,不是130
 

 

如图:加了逗号之后,提取的值正确了;
 

 

有的字段在列表的最后,如图:

 

 表达式后面要加上},提取出来的值才正确,不加分隔符,如果值大于0了,那么只能取到一位数了;

 

 

posted @ 2021-03-10 16:17  呆萌呆萌呆萌  阅读(472)  评论(0编辑  收藏  举报