问题标签 [gpath]
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.
json - Groovy JSON/GPath 查询
鉴于以下 JSON,我想提取 postal_code(long_name 或 short_name)。我使用 JsonSlurper 将其摄取到变量中,并使用 find/contains/etc 尝试了各种查询。抓取在其“类型”中具有“postal_code”但无法弄清楚的节点。任何帮助是极大的赞赏。
xpath - 在 Groovy 中使用 Xpath 删除 XML 中的节点
我有这个 Groovy 代码可以使用 xpath 字符串删除节点,但是在删除 xpath 导致多个节点实例的节点时遇到问题。
示例 XML...
删除节点的代码...
element1
上面的代码使用 xpath删除节点/root/element1
,它评估为单个节点,但不适用于/root/items/name
评估为多个节点。
grails - 如何在 GSP 页面中使用 Gpath 编写条件表达式
我想显示类型可能是 1 或 4 或 5 的附件
${attachments} has got attachments with the attributes name, type
编辑:
我在尝试上面的方法,它没有工作,如何做到这一点。
java - 使用放心从 XML 映射
我正在尝试使用放心设置集成测试。在我的一个测试用例中,我必须使用可靠的 XmlPath 验证 XML 文件的某些属性,这似乎使用了 Groovy 的 GPath。
我有一个具有以下结构的 XML 文档(ID 是唯一的):
理想情况下,给定一个 someelement id,我想得到一个它的属性的映射,即假设给定的 someelement id 是 1234 我想得到一个如下所示的映射:
{"hello": "world", "name": "a name", "status": "new"}
。我该怎么做?我知道 XmlPath 中有一个 getMap 方法,但我不知道必须使用哪个表达式。
如果无法将属性作为地图获取,我会满足于获取键列表和值列表。同样,我不知道我必须使用哪种表达方式。我尝试过这样的事情:
但是,它什么也没找到。
xml - Groovy“查找”闭包...遍历递归 xml
如果我有这样的 GPath:
要获得一个 ID 为 5 的芒果,我会这样做,
但是如果我的 GPath 是递归的。我的意思是,一个苹果可以有一个芒果。芒果里面又可以放一个苹果。例如:
如何获得 id 为“5”的芒果。无论递归,GPath 可能是(ID 为“5”的芒果可以处于任何递归级别),我需要找到 ID 为“5”的芒果。我怎样才能通过 find 闭包来实现这一点?
提前谢谢
groovy - 使用 XmlSlurper 和 findAll 嵌套 GPath 表达式
我正在尝试使用XmlSlurper
GPath 分析 XML 树,该findAll
方法的行为让我感到困惑。
例如,假设您有以下 XML 树:
假设xml
已通过XmlSlurper
'sparse
方法之一初始化,则以下代码按预期执行:
另一方面:
我很难理解为什么我可以使用特殊@
属性(以及其他属性,例如**
),但不能使用“正常”属性。
我查看了 API 代码,更让我困惑的是该getProperty
实现(在 中找到GPathResult
)似乎支持我正在尝试做的事情。
我错过了什么?
java - GPathResult ..存在或不存在节点
我的 GPathResult 可以通过以下 3 种方式之一拥有名称节点
1)名称节点存在并具有值ex:John
2) 名称节点存在,但其中没有值。
3) 根本不存在名称节点。
在 Groovy 代码中,我如何使用我的 Gpathresult 区分上述 3 种情况。我是否使用类似 gPathResult 的东西。值()!=空?
伪代码:
groovy - Groovy 脚本中的 XmlSlurper --- 使用外部闭包将节点插入 GpathResult
我对以下场景有疑问:
-- 我有一个 GPathResult “body”,我想在其中添加更多 xml(节点和子节点) -- 有些部分很常见,所以我试图将它们保存在外部封闭“commonNode”中,我可以在任何需要的地方插入
在我调用 XmlUtil.serialize(body) 之后我想要得到的是:
但是结果中完全缺少结构,所以我猜我将外部闭包称为“commonNode()”的方式有问题。
希望有人有答案。如果您需要更多详细信息,请告诉我。
xpath - Groovy:使用 xpath 类型获取嵌套对象的值
我有带有嵌套对象的 POJO,我需要将其转换为没有嵌套的简单对象,例如我有一个人员和地址,如下所示
我需要将 Person 翻译成 PersonFlat 看起来像
有什么方法可以对 Person 实例进行 xpath 类型的提取以使用 groovy metaClass 获取 Address.lineOne 和 Address.lineTwo ?
xpath - 按名称查找所有属性值的 GPath 表达式
寻找 GPath 表达式以使用属性名称获取属性值列表:
..当搜索所有category
属性时,我想取回这个,不管category
文档中存在属性的位置:
[weather, sports, business, deals, life]
...但是我所有的尝试都比我想要的要多,似乎它正在返回没有category
属性的节点;我可以从列表中删除空元素,但我想知道为什么会这样。
[, weather, sports, business, deals, , life]