问题标签 [jpath]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
135 浏览

c# - 在 Jpath 中转义单引号

我有一个格式良好的 json,如下所示:

我使用 json 路径来过滤Status 基于Code. Jsonpath 是这样的: ..[?(@.Code == '{0}')].Status 在 C# 中。因此以编程方式填充了 jpath 中的参数。当值“'!!!” 被传递到上面的 jpath( ie ..[?(@.Code == ''!!!')].Status) 它不起作用,因为单引号没有转义。因为我不是硬编码参数值,所以我无法手动转义它。即将..[?(@.Code == '\'!!!')].Status解决问题。但我需要以编程方式实现它。

解决此问题的一种方法是使用正则表达式并识别模式并在将参数传递给 jpath 之前对其进行转义。我对正则表达式不太好,无法编写一个在替换时保持 jpath 开头和结尾引用完整的方法。谁能帮忙。

或者有什么更好的方法可以接近吗?...

Ps:我不能使用 jpath 的正则表达式功能,因为我需要按特定代码进行过滤。

0 投票
2 回答
462 浏览

java - 在不使用 POJO 的情况下从 JAVA 中的 JSON 文件动态生成 JSON Schema

有关获取输入 JSON 文件的 JPATH 的任何建议。基本上是来自 JSON 文件的 JSON 模式的树结构

0 投票
1 回答
90 浏览

json - 使用 jpath 从 Json 获取值

输出的 json 应该是这样的

从输入 json 中,我想使用提取所有值

路径

名称路径 = “data.name” 引脚路径 = “data.address.pin”

我需要所有值,我将创建一个输出 json。

0 投票
1 回答
250 浏览

json - JSON Path - 如何根据子元素查找根元素?

我有一个 JSON 对象,我试图在它下面找到根元素。有人可以帮我解决这个问题吗?

我需要根据服务器名称提取根元素1016202210162021 。

我尝试使用如下语法,但没有成功

我将不胜感激任何建议。

0 投票
1 回答
196 浏览

java - 一次只解析 JSON 中的特定字段

我有一个巨大的 JSON,但我只需要解析特定的字段。我知道这些字段的路径,所以我决定尝试 JPath,它可以工作,但我想一次解析所有字段。假设我有这样的 JSON:

我只想获取具有这些路径的必填字段并将其映射到 Java POJO:

因此,作为最终结果,我想要一个 Java 对象列表,其中该对象包含required_field1required_field2

升级版:

  • 现在如何运作

我有一个 Java POJO,它是一个容器

我使用 JPath 读取了 2 次 JSON 路径:

然后我将它映射到我的 POJO

有点我认为有更好的方法可以做到这一点

0 投票
1 回答
94 浏览

c# - Json.Net 中 {"Type":"Ping"} 的 jpath 是什么?

我有一个来自 webSockets 的简单字符串。我坚持使用 SelectTokens() 方法的 jPath。是否有任何路径可以帮助我获取 $.Type 仅当它等于“Ping”时?

这是 c# 应用程序,使用标准 Json.Net 库。

0 投票
0 回答
31 浏览

json - 用于过滤属性的 JPath 不起作用

我是 JSONPath 的新手,所以我想也许你可以帮助我。

我有以下 JSON:

我正在尝试从“Etapa==0”的字段中获取 ID(大写字母 1)。

我尝试了很多组合,$.records[?(@.fields.Etapa==0)].fields.ID似乎它可以工作,但它没有。当我尝试$.records[?(@.id=="rectoQCinQrYvMJFb")].fields.ID它时,我会做错什么?

谢谢!

$.records[?(@.fields.Etapa=="0")].fields.ID编辑:表达式是正确的,因为字段类型是字符串,所以表达式的零需要引号。