如何用正则表达式提取url返回的jason数值
使用Jmeter的正则表达式提取器,提取接口的响应数据,如下:{"access_token":"a33ae898c0a012d8033cb24df69c786b","to...
使用Jmeter的正则表达式提取器,提取接口的响应数据,如下:
{"access_token":"a33ae898c0a012d8033cb24df69c786b","token_type":"client_credentials","expires_in":3600,"example_parameter":null}
中的a33ae898c0a012d8033cb24df69c786b,有高手帮忙写一下可以吗? 展开
{"access_token":"a33ae898c0a012d8033cb24df69c786b","token_type":"client_credentials","expires_in":3600,"example_parameter":null}
中的a33ae898c0a012d8033cb24df69c786b,有高手帮忙写一下可以吗? 展开
2个回答
展开全部
正则表达式:(?<=\"access_token\":)\"(.+?)\"
取第一捕获组的数据,就行了.
完整的Java程序如下:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FFF {
public static void main(String[] args) {
String s="{\"access_token\":\"a33ae898c0a012d8033cb24df69c786b\",\"token_type\":\"client_credentials\",\"expires_in\":3600,\"example_parameter\":null}";
String regex="(?<=\"access_token\":)\"(.+?)\"";
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(s);
while(m.find()){
System.out.println(m.group(1));
}
}
}
运行结果:
a33ae898c0a012d8033cb24df69c786b
其实用json对象解析更简单,完整的Java程序如下:
import org.json.JSONObject;
public class FFF {
public static void main(String[] args) {
String s="{\"access_token\":\"a33ae898c0a012d8033cb24df69c786b\",\"token_type\":\"client_credentials\",\"expires_in\":3600,\"example_parameter\":null}";
JSONObject jsonObj = new JSONObject(s);
String str=(String) jsonObj.get("access_token");
System.out.println(str);
}
}
运行结果:
a33ae898c0a012d8033cb24df69c786b
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询