raf*_*ian 3 groovy xpath gpath
查找 GPath 表达式以使用属性名称获取属性值列表:
def xmltxt = """<reports>
<report category="weather">sunny</report>
<report category="sports">golf</report>
<report category="business">
<subreport category="deals">wallstreet</subreport>
</report>
<report>NA</report>
<report category="life">gossip</report>
</reports>"""
Run Code Online (Sandbox Code Playgroud)
..当搜索所有category属性时,我想找回它,无论category属性存在于文档中的位置:
[weather, sports, business, deals, life]
...但是我所有的尝试检索的内容都超出了我想要的内容,似乎它返回的节点没有category属性;我可以从列表中删除空元素,但我想知道为什么会发生这种情况。
[, weather, sports, business, deals, , life]
def names = xml.'**'.findAll{
it.@category
}.collect{
it.@category
}
Run Code Online (Sandbox Code Playgroud)
def parsed = new XmlParser().parseText( xmltxt )
parsed.'**'*.attribute( 'category' ).findAll()
Run Code Online (Sandbox Code Playgroud)
应该做。
给你,解决XmlSlurper方案:
def parsed = new XmlSlurper().parseText( xmltxt )
parsed.'**'*.attributes().findResults { it.category }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2032 次 |
| 最近记录: |