我希望有这可能需要2个或多个参数类似input
,find_tag
一个常规功能。常规XML解析功能
我写的东西像下面的测试(没有的功能),但它并没有给我D_1164898448
。请帮助我。
def temp="""<Portals objVersion=\"1.1.19\">
<vector xsi:type=\"domainservice:Portals\" objVersion=\"1.1.19\">
<domainName>D_1164898448</domainName>
<address xsi:type=\"metadata:NodeRef\" objVersion=\"1.1.19\">
<host>Komodo</host>
<port>18442</port>
</address>
</vector>
</Portals>"""
def fInput="domainName"
def records = new XmlParser().parseText(temp)
def t=records.findAll{ it.fInput}.text()
println t
更新
的属性我正在干什么类似下面
但像明智如何做到这一点的节点?
println "host = ${records.vector.address.host.text()}"
有什么类似'$ {records.attribute(“ID”)}“'拿到节点,其中代替'id'我可以给我的完整DOM树路径节点? – abi1964
的XmlReader返回'groovy.util.Node',这是不一样的DOM节点,所以不支持XPath表达式它能做什么支持是GPATH表述,这里所描述:http://groovy.codehaus.org/GPath。看看你能不能用这个如果没有,你需要充分的XPath支持,你可能需要使用一个外部库;看到http://groovy.codehaus.org/Reading+XML+with+Groovy+and+XPath – socha23