JSON查询语句生成器

可视化拼装JSONPath查询路径,同步生成jq等语言的等价写法,粘贴JSON数据即可预览匹配结果,支持过滤、切片、递归搜索等操作。

免费在线工具
Loading…

使用说明

选择「JSONPath」或「jq」查询风格。JSONPath 模式下,通过「.key 子属性」「[*] 数组通配」「..key 递归搜索」「[?(@.key==v)] 过滤条件」「[0:5] 数组切片」「[0] 数组索引」按钮逐段构建查询路径,可随时撤销最后一步,右侧实时同步输出 JSONPath、JavaScript、jq、Python 四种等价写法。jq 模式下可手动输入表达式或用操作按钮辅助输入。在「测试数据」中粘贴 JSON 后会自动执行查询并展示匹配结果数量与内容。也可点击「加载示例数据」体验完整流程。

功能介绍

  • 可视化分段构建 JSONPath,一键插入子属性、通配、过滤、切片等操作
  • 同步生成 JavaScript、jq、Python 等价写法参考
  • 粘贴 JSON 测试数据后自动执行查询并显示匹配结果
  • 内置轻量 JSONPath 求值器,支持递归搜索与数值比较过滤
  • jq 模式提供常用操作符快捷插入

使用场景

从接口返回中取数据
面对嵌套很深的 JSON 响应,用构建器拼出正确路径,再对照生成的等价代码写到自己的程序里
学习 JSONPath 语法
用分段按钮尝试不同操作符,通过匹配结果实时理解每个路径段的语义
迁移到 jq 脚本
先在浏览器里验证路径正确,再把 jq 表达式粘贴到 shell 管道或运维脚本中
接口联调数据核对
粘贴接口返回 JSON 和期望路径,快速核对字段是否存在、类型与数量是否符合预期

常见问题

JSONPath 和 jq 有什么区别?
JSONPath 用 $ 开头的路径语法,jq 是独立的命令行工具语法(以 . 开头,用 | 管道组合操作)。工具支持两种风格并可在测试数据上执行匹配
生成的 JavaScript 和 Python 代码能直接用吗?
这两种语言的输出是参考写法:JavaScript 展示对应的路径与说明,Python 给出 jsonpath-ng 库的使用示例,真正运行还需要引入对应库
为什么 jq 模式下匹配结果也是 JSONPath 语法?
预览匹配使用内置的轻量求值器实现,主要支持 JSONPath 语法;jq 表达式建议在安装了 jq 的环境验证,预览结果仅供参考
过滤条件支持哪些比较符?
支持 ==、!=、>、<、>=、<= 六种比较符,数值比较会先转换为数字再比较,相等比较则按字符串处理