转载自 http://www.cnblogs.com/qmfsun/p/5906462.html
JMeter获取正则表达式中的提取的所有关联值的解决方法:
需求如下:
{
: "error_no":"0",
: "results":
: [
: : {
: : : "total_earnings":"",
: : : "num_page":"5",
: : : "retrace_rate_thirty":"0.0061",
: : : "day_yield_rankings":"",
: : : "choose_success_rate":"0",
: : : "state":"",
: : : "week_yield_rankings":"",
: : : "month_yield_rankings":"",
: : : "act_id":"",
: : : "last_week_yield_rankings":"",
: : : "name":"lol",
: : : "total_yield":"0.0532",
: : : "total_rows":"277",
: : : "user_id":"10150",
: : : "day_earnings":"",
: : : "face_image":"/userImage/10150.jpg",
: : : "month_earnings":"",
: : : "week_earnings":"",
: : : "apply_state":"1",
: : : "total_page":"56",
: : : "account_id":"204",
: : : "turnover_thirty_rate":"0.0941",
: : : "strongHold":"平安银行",
: : : "month_yield":"-0.0048",
: : : "total_yield_rankings":"1",
: : : "account_name":"",
: : : "week_yield":"0.0013",
: : : "cur_page":"1",
: : : "face_image_small":"/userImage/small/10150.jpg",
: : : "day_yield":"-0.0001"
: : },
: : {
: : : "total_earnings":"",
: : : "num_page":"5",
: : : "retrace_rate_thirty":"0.0099",
: : : "day_yield_rankings":"",
: : : "choose_success_rate":"0",
: : : "state":"",
: : : "week_yield_rankings":"",
: : : "month_yield_rankings":"",
: : : "act_id":"",
: : : "last_week_yield_rankings":"",
: : : "name":"冒牌司令",
: : : "total_yield":"0.0409",
: : : "total_rows":"277",
: : : "user_id":"10262",
: : : "day_earnings":"",
: : : "face_image":"/userImage/10262.jpg",
: : : "month_earnings":"",
: : : "week_earnings":"",
: : : "apply_state":"1",
: : : "total_page":"56",
: : : "account_id":"671",
: : : "turnover_thirty_rate":"0.9981",
: : : "strongHold":"双汇发展",
: : : "month_yield":"0.0409",
: : : "total_yield_rankings":"2",
: : : "account_name":"",
: : : "week_yield":"0.0341",
: : : "cur_page":"1",
: : : "face_image_small":"/userImage/small/10262.jpg",
: : : "day_yield":"0.0008"
: : },
: : {
: : : "total_earnings":"",
: : : "num_page":"5",
: : : "retrace_rate_thirty":"0.0009",
: : : "day_yield_rankings":"",
: : : "choose_success_rate":"1",
: : : "state":"",
: : : "week_yield_rankings":"",
: : : "month_yield_rankings":"",
: : : "act_id":"",
: : : "last_week_yield_rankings":"",
: : : "name":"888",
: : : "total_yield":"0.0359",
: : : "total_rows":"277",
: : : "user_id":"10130",
: : : "day_earnings":"",
: : : "face_image":"/userImage/10130.jpg",
: : : "month_earnings":"",
: : : "week_earnings":"",
: : : "apply_state":"1",
: : : "total_page":"56",
: : : "account_id":"38",
: : : "turnover_thirty_rate":"0.1873",
: : : "strongHold":"平安银行",
: : : "month_yield":"0.0048",
: : : "total_yield_rankings":"3",
: : : "account_name":"",
: : : "week_yield":"0.0004",
: : : "cur_page":"1",
: : : "face_image_small":"/userImage/small/10130.jpg",
: : : "day_yield":"-0.0001"
: : },
: : {
: : : "total_earnings":"",
: : : "num_page":"5",
: : : "retrace_rate_thirty":"0.0027",
: : : "day_yield_rankings":"",
: : : "choose_success_rate":"0",
: : : "state":"",
: : : "week_yield_rankings":"",
: : : "month_yield_rankings":"",
: : : "act_id":"",
: : : "last_week_yield_rankings":"",
: : : "name":"13131313132",
: : : "total_yield":"0.0152",
: : : "total_rows":"277",
: : : "user_id":"10133",
: : : "day_earnings":"",
: : : "face_image":"",
: : : "month_earnings":"",
: : : "week_earnings":"",
: : : "apply_state":"1",
: : : "total_page":"56",
: : : "account_id":"55",
: : : "turnover_thirty_rate":"0.03",
: : : "strongHold":"江苏吴中",
: : : "month_yield":"0.0152",
: : : "total_yield_rankings":"4",
: : : "account_name":"",
: : : "week_yield":"0.0002",
: : : "cur_page":"1",
: : : "face_image_small":"",
: : : "day_yield":"-0.0002"
: : },
: : {
: : : "total_earnings":"",
: : : "num_page":"5",
: : : "retrace_rate_thirty":"0.0047",
: : : "day_yield_rankings":"",
: : : "choose_success_rate":"0",
: : : "state":"",
: : : "week_yield_rankings":"",
: : : "month_yield_rankings":"",
: : : "act_id":"",
: : : "last_week_yield_rankings":"",
: : : "name":"谁主沉浮",
: : : "total_yield":"0.0129",
: : : "total_rows":"277",
: : : "user_id":"10256",
: : : "day_earnings":"",
: : : "face_image":"/userImage/10256.jpg",
: : : "month_earnings":"",
: : : "week_earnings":"",
: : : "apply_state":"1",
: : : "total_page":"56",
: : : "account_id":"648",
: : : "turnover_thirty_rate":"0.493",
: : : "strongHold":"安洁科技",
: : : "month_yield":"0.0129",
: : : "total_yield_rankings":"5",
: : : "account_name":"",
: : : "week_yield":"-0.0076",
: : : "cur_page":"1",
: : : "face_image_small":"/userImage/small/10256.jpg",
: : : "day_yield":"-0.0054"
: : }
: ],
: "dsName":
: [
: : "results"
: ],
: "error_info":""
}
现在需要将
name":"lol
name":"冒牌司令
name":"888
name":"13131313132
name":"谁主沉浮
name字段的值获取,并输出所有的值
通过查看结果树,是看不到name的所有取值
通过添加后置处理器Debug PostProcessor查看提取的所有结果
可以发现,JMeter的正则表达式提取关联值和lr一样,对于有多个符合结果的,会将所有的结果值保存在一个数组里
既然现在看到提取结果是一个数组,那现在怎么将所有的结果拿出来使用呢?
通过逻辑控制器-ForEach控制器进行数组的循环操作,逐一打印出所有的关联值