问题标签 [xmlslurper]
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.
groovy - 更改 XML 标记名称
我想转换一个我用XmlSlurper
. (相同的)XML 标记名称应替换为id
属性值;应删除所有其他属性。从这段代码开始:
我想得到以下信息:
(我在 XML 上编写测试断言,并希望简化它们的结构。)我已经阅读了使用 XmlSlurper 更新 XML 并四处搜索,但没有发现在保留其子节点的同时与节点交换replaceNode()
或交换节点的方法。replaceBody()
groovy - 从groovy中的href-tag中提取URL
我需要解析格式错误的 HTML 页面并从中提取某些 URL 作为任何类型的集合。我真的不在乎什么样的集合,我只需要能够迭代它。
假设我们有这样的结构:
这是我到目前为止所做的:
我想要类似的东西
但我得到的是:
更准确地说,我不能使用所有 URL,因为我需要解析的 HTML 文档大约有 15000 行长,并且有很多我不需要的 URL。所以我需要每个“内部”块中的第一个URL。
groovy - Confluence 插件无法找到 .dtd 文件
我正在为我们公司的 Confluence 编写一个插件。
在这个插件中,我需要解析一些 Confluence 存储格式 XML。
因此我从这里得到了 confluence.dtd 和一些 .ent 文件:http: //www.amnet.net.au/~ghanniton/confluence/readme.html
我将文件放在项目的资源中。我的插件是用 groovy 编写的,对于 XML 解析,我使用 XML Slurper。但是当我在 Confluence 中运行插件时,它找不到文件,因为它在以下位置查找它们:.../target/container/tomcat6x/cargo-confluence-home/
只是为了测试我的插件的其余部分是否正常工作,我手动将它们复制到那里,一切正常。所以,我的问题实际上是我的插件无法找到 .dtd 文件(和 .ents)。
有没有人做过类似的事情,或者一个如何解决这个问题的想法?
提前致谢。
groovy - 时髦的。在使用 MarkupBuilder 和 XMLSlurper 时附加节点
我的问题是 Groovy 并在使用 MarkupBuilder 和 XMLSlurper 时附加一个节点。
有人能告诉我为什么当我运行这段代码到第一个 println 时,我的输出将目标行显示为:
但是当我将它运行到第二个 println 时,我的目标行输出现在是:
groovy - 使用 XmlSlurper 和 findAll 嵌套 GPath 表达式
我正在尝试使用XmlSlurper
GPath 分析 XML 树,该findAll
方法的行为让我感到困惑。
例如,假设您有以下 XML 树:
假设xml
已通过XmlSlurper
'sparse
方法之一初始化,则以下代码按预期执行:
另一方面:
我很难理解为什么我可以使用特殊@
属性(以及其他属性,例如**
),但不能使用“正常”属性。
我查看了 API 代码,更让我困惑的是该getProperty
实现(在 中找到GPathResult
)似乎支持我正在尝试做的事情。
我错过了什么?
groovy - xmlslurper 没有欺骗命名空间声明
我有这个 XML,
我正在尝试使用 xmlslurper 将其复制到测试步骤。
复制后测试步骤如下所示
为什么没有按原样复制名称空间声明?我想要在顶部而不是在每个标签中声明的所有命名空间。请帮忙。
groovy - XmlSlurper 使用命名空间附加节点
我正在尝试使用将节点附加到我的请求中xmlslurper
这导致
我希望它附加命名空间,比如
请帮忙。
这是我正在使用的确切代码。
正在添加标签,但没有ifx
命名空间前缀。
groovy - XmlSlurper:如何更改动态节点的文本
那是我的 XML,我想更改节点“Anzahl_x0020_R”的值。问题是,在运行时我不知道确切的名称。我只知道要更改的节点将以'Anzahl'开头。所以我这样做了:
问题是,它不起作用,价值将保持不变。如果我做:
它会起作用,但正如我之前所说,我不知道运行时的确切名称。
groovy - 我正在尝试使用列表数组循环 XMLSlurper 查找语句。你能做这个吗?
我正在尝试遍历这样的表达式,将字符串“问题超链接”更改为列表中的一个项目,我是 groovy 新手,找不到可行的方法。你真的需要硬编码吗?我能找到的每个例子都是硬编码的
parsing - XmlSlurper 解析查询结果
我有一个查询,它会在我的表中带回一个包含所有 xml 的单元格。我有它,所以我可以在没有任何分隔符的情况下吐出单元格中的内容。现在我需要实际获取每个单独的元素并将它们与我的对象链接起来。有什么简单的方法可以做到这一点?
现在这将为我提供包含这些审计详细信息的单元格。不好的是,它只是将字段中的所有信息放在没有元素标签的巨型字符串中。我将如何通过并将值分配给对象。我一直在尝试使用此示例http://gallemore.blogspot.com/2008/04/groovy-xmlslurper.html没有运气,因为它适用于文件。
我必须错过一些东西。我尝试运行另一个 parseText(auditDetails) 但没有任何运气。
有什么建议么?
编辑:
该字段看起来像的 xml int
^ 类似于它的样子,除了我的更长。它以“scottsmithtue 5th 2009”的形式出现,依此类推。我需要实际获取这些标签并将它们链接到我的对象,而不是仅仅将它们打印在一个连接的字符串中。