jsonpath的使用
2021-03-05 06:26
标签:多个 tar 数组 结果 json 说明 nbsp mon 正则表达式 JsonPath举例 { "lemon": { "teachers": [ { "id": "101", "name": "华华", "addr": "湖南长沙", "age": 25 }, { "id": "102", "name": "韬哥", "age": 28 }, { "id": "103", "name": "Happy", "addr": "广东深圳", "age": 16 }, { "id": "104", "name": "歪歪", "addr": "广东广州", "age": 29 } ], "salesmans": [ { "id": "105", "name": "毛毛", "age": 17 }, { "id": "106", "name": "大树", "age": 27 } ] }, "avg": 25 } jsonpath的使用 标签:多个 tar 数组 结果 json 说明 nbsp mon 正则表达式 原文地址:https://www.cnblogs.com/fyangq/p/12909425.html运算符(Operators)
运算符
说明
$
根元素
@
当前元素
*
通配符,可以表示任何元素
..
递归搜索
.
子节点(元素)
[‘‘ (, ‘‘)]
一个或者多个子节点
[ (, )]
一个或者多个数组下标
[start:end]
数组片段,区间为[start,end)
[?()]
过滤器表达式,其中表达式结果必须是boolean类型,如可以是比较表达式或者逻辑表达式
JsonPath
路径说明
$.lemon.teachers[*].name
获取所有老师的的名称
$..name
获取所有人的名称
$.lemon.*
所有的老师和销售
$.lemon..age
所有人的年龄
$..age
所有人的年龄
$.lemon.teachers[*].age
所有老师的年龄
$.lemon.teachers[3]
索引为3(第4个)老师的信息
$..teachers[3]
索引为3(第4个)老师的信息
$.lemon.teachers[-2]
倒数第2个老师的信息
$..teachers[-2]
倒数第2个老师的信息
$..teachers[1,2]
第2到第3个老师的信息
$..teachers[:2]
索引0(包含)到索引2(不包含)的老师信息
$..teachers[1:3]
索引1(包含)到索引3(不包含)的老师信息
$..teachers[-2:]
最后的两个老师的信息
$..teachers[2:]
索引2开始的所有老师信息
$..teachers[?(@.addr)]
所有包含地址的老师信息
$.lemon.teachers[?(@.age
所有年龄小于20的年龄信息
$..teachers[?(@.age
小于或等于平均年龄的老师信息
$..teachers[?(@.name =~ /.*PPY/i)]
所有名称满足正则表达式的老师信息 (忽略大小写)
$..*
所有的信息
$.lemon.teachers.length()
老师的数量