GPath中此XPath //div[@id='foo']的替代方案是什么?一般来说,我在哪里可以找到这些文档?
发布于 2011-08-11 12:55:34
下面是相应的代码片段:
def node = new XmlSlurper().parseText(...)
def foo = node.depthFirst().findAll { it.name() == 'div' && it.@id == 'foo'}以下是您可能想要阅读的其他链接:
发布于 2011-08-11 16:53:25
前一篇文章给出了所需的所有内容:假设您的文档已被转换为xml,您希望
def foo = xml.path.to.div.find{it.@id == 'foo'}找到一个单一的结果。或findAll来查找所有结果。
发布于 2015-04-24 22:58:42
要模仿表达式//div@id='foo‘,您可以对GPath执行的最接近的操作是:
def xml = new XmlParser().parseText(text)
xml.'**'.div.findAll { it.@id=="foo" }“**”与XPath中的“//”几乎相同。
xml.'**'.div将在任何级别生成类型为div的所有节点。
稍后使用findAll()对给定的闭包进行过滤,您将获得一个节点列表,就像在XPath示例中所做的那样
https://stackoverflow.com/questions/7020843
复制相似问题