JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据,简洁、层次清晰、易于编写和阅读。JsonPath是Json版的XPath,JsonPath为Json文档提供了解析能力。
1、JSON格式
标准的json(json字符串)的格式为:
{“key”:“value”}
{“key”:“value”,“key1”:“value1”,…,“keyN”:“valueN”}
说明:value可以是普通的字符串、数字、布尔变量(true、false)、数组、Json对象。
2、JsonPath基本用法
(1)JsonPath语法要点
- $ 表示文档的根元素
- @ 表示文档的当前元素
- .node_name 或 ['node_name'] 匹配下级节点
- [index] 检索数组中的元素
- [start:end:step] 支持数组切片语法
- * 作为通配符,匹配所有成员
- .. 子递归通配符,匹配成员的所有子元素
- (<expr>) 使用表达式
- ?(<boolean expr>)进行数据筛选
(2)XPath与JSONPath与语法对比
注意:
- JsonPath的索引从0开始计数
- JsonPath中字符串使用单引号表示,例如:$.store.book[?(@.category=='reference')]中的'reference'
3、JsonPath示例
JSON 文档的内容如下:
上述文档的几个元素路径解析说明: