看起来像重复,但请帮我用正确的工具创建正确的查询。我想在Jenkins机器上执行这个脚本,所以我不想搞乱其他库。
我希望列出所有id
,例如name
是' Test79'而tags
包含' launch_QA-350')
我有这样的json结构:
//...
{
"content": [
{
"id": "5641cde5bfcd0b0485326b83",
"name": "Test79",
"tags": [
"launch_QA-350",
"2628991879",
" 2628991879"],
"isPr": false
}
]
}
(更新)我已经找到了类似Java的解决方案:
import groovy.json.JsonSlurper
def slurper = new JsonSlurper();
def result = slurper.parseText(jsObj);
for(def cont : result.content){
if(cont.name == "Test79" && cont.tags.contains("launch_QA-350"))
println(cont.id)
}
答案 0 :(得分:2)
以 groovier 方式:
def json = new JsonSlurper().parseText(jsObj)
assert ['5641cde5bfcd0b0485326b83'] ==
json.content.findAll({ it.name == 'Test79' && it.tags.contains('launch_QA-350') }).id
或
assert ['5641cde5bfcd0b0485326b83'] ==
json.content.findAll({ it.name == 'Test79' && 'launch_QA-350' in it.tags }).id