JSONPath表达式

JSONPath表达式前言JSONPath是一种简单的方法来提取给定JSON文档的部分内容。JSONPath提供的json解析非常强大,它提供了类似正则表达式的语法,基本上可以满足所有你想要获得的json内容。JSONPath表达式语法1、操作符?:问号,标记表达式的开头。使用的语法[?(表达)]例如:[?(Expression)]@:在符号处表示正在处理的当前节点。语法使用$.books[?@.price>100]注意:使用JSONPath的[]操作符操作一个对象或者数组,索引是从0开始。

大家好,又见面了,我是你们的朋友全栈君。

前言

JSONPath是一种简单的方法来提取给定JSON文档的部分内容。JSONPath提供的json解析非常强大,它提供了类似正则表达式的语法,基本上可以满足所有你想要获得的json内容。

JSONPath表达式语法

1、操作符
在这里插入图片描述

  • ?:问号,标记表达式的开头。使用的语法 [?(表达)]
    例如:[?(Expression)]

  • @:在符号处表示正在处理的当前节点。语法使用$.books[?@.price>100]

注意:使用JSONPath的[]操作符操作一个对象或者数组,索引是从0开始。

2、函数
函数可以在路径尾部调用——函数的输入是路径表达式的输出。函数的输出取决于函数本身。
在这里插入图片描述
3、过滤运算符
过滤器是筛选数组的逻辑表达式。
在这里插入图片描述

范例

{ 
   
    "store": { 
   
        "book": [
            { 
   
                "category": "reference",
                "author": "Nigel Rees",
                "title": "Sayings of the Century",
                "price": 8.95
            },
            { 
   
                "category": "fiction",
                "author": "Evelyn Waugh",
                "title": "Sword of Honour",
                "price": 12.99
            },
            { 
   
                "category": "fiction",
                "author": "Herman Melville",
                "title": "Moby Dick",
                "isbn": "0-553-21311-3",
                "price": 8.99
            },
            { 
   
                "category": "fiction",
                "author": "J. R. R. Tolkien",
                "title": "The Lord of the Rings",
                "isbn": "0-395-19395-8",
                "price": 22.99
            }
        ],
        "bicycle": { 
   
            "color": "red",
            "price": 19.95
        }
    },
    "expensive": 10
}

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149495.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • stm32编程步骤_单片机STM32

    stm32编程步骤_单片机STM32近几年来,从云计算、大数据到机器学习、AI、物联网,各种新潮的技术概念一波~~接一波。于是就产生了一些好奇心旺盛,抱着去凑一凑热闹的心态,实际上却是也想分一杯羹儿的程序员!但问题是,在他们的技术栈里,一切…

    2022年9月6日
    5
  • 有序的四字成语_LinkedHashMap

    有序的四字成语_LinkedHashMapHashMap是无序的,HashMap在put的时候是根据key的hashcode进行hash然后放入对应的地方。所以在按照一定顺序put进HashMap中,然后遍历出HashMap的顺序跟put的顺序不同(除非在put的时候key已经按照hashcode排序号了,这种几率非常小)单纯的HashMap是无法实现排序的,这的排序是指,我们将键值对按照一定的顺序put进HashMap里,然后在进行

    2022年9月23日
    0
  • Maven的GroupID和ArtifactID的含义「建议收藏」

    标签:目的   left   就会   定义   平时   包名   项目   rep   depend   groupID:是项目组织唯一的标识符,实际对应Java的包的结构,是main目录里Java的目录结构。artifactID:是项目的唯一标识符,实际对应项目的名称,就是项目根目录的名称。 1.基础掌握<groupId>com.yucong.commonma…

    2022年4月14日
    229
  • 华为測试 公共子串计算

    华为測试 公共子串计算

    2022年2月7日
    55
  • tasklist 结束进程_转Tasklist(windows)

    tasklist 结束进程_转Tasklist(windows)目录Tasklist简述1、”Tasklist”命令是一个用来显示运行在本地或远程计算机上的所有进程的命令行工具,带有多个执行参数。类似Linux系统的ps命令2、显示结果由五部分组成:映像名称(进程名)、PID、会话名、会话#、内存使用使用格式tasklist[/s[/u[\][/p]]][{/m|/svc|/v}][/fo{table|list|csv}…

    2025年6月11日
    0
  • ddd领域驱动设计三种实现_产品架构

    ddd领域驱动设计三种实现_产品架构文章目录前言一、DDD四层与传统三层区别二、四层架构详解1.分层作用2.领域对象三、编码实践1.代码结构四、常见问题1.领域模型(充血模型)注入问题结尾前言分层架构是运用最为广泛的一种架构模式,几乎每个软件系统都需要通过分层来隔离不同的关注点,以应对不同需求的变化,并且使得这种变化可以独立进行。对于分层架构来说,层次越往上其抽象层次就越面向业务和用户,层次越往下其抽象层次就越面向技术和设备。一、DDD四层与传统三层区别我们常用的三层架构模型划分为表现层,业务逻辑层,数据访问层等,在DDD分层结构

    2025年5月22日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号