//div[@id='foo']GPathでこのXPathに代わるものは何ですか?一般的に、このドキュメントはどこにありますか?
22488 次
4 に答える
30
対応するスニペットは次のとおりです。
def node = new XmlSlurper().parseText(...)
def foo = node.depthFirst().findAll { it.name() == 'div' && it.@id == 'foo'}
あなたが読みたいかもしれない他のいくつかのリンク:
于 2011-08-11T04:55:34.470 に答える
9
前のポスターは、あなたに必要なすべてを与えましたxml:
def foo = xml.path.to.div.find{it.@id == 'foo'}
単一の結果を見つける。またはfindAll、すべての結果を検索します。
于 2011-08-11T08:53:25.470 に答える
3
式 //div[@id='foo'] を模倣するために、GPath でできる最も近いことは次のとおりです。
def xml = new XmlParser().parseText(text)
xml.'**'.div.findAll { it.@id=="foo" }
「**」は、XPath の「//」とほとんど同じです。
xml.'**'.div
任意のレベルでタイプ div のすべてのノードを生成します。
XPath の場合と同様に、指定されたクロージャで findAll() を使用して後でフィルタリングすると、ノードのリストが取得されます。
于 2015-04-24T14:58:41.863 に答える
1
必要なものはこれです:
def root = new XmlSlurper().parseText(<locOfXmlFileYouAreParsing>.toURL().text)
def foundNode = root.'**'.find{ it.@id == "foo" }
パスを知らなくても見つけることができるダブル * です。少なくとも私はそうしています。
于 2012-01-08T22:20:40.220 に答える