Groovy - XmlSlurper - 找到最里面的元素

时间:2014-05-13 13:39:03

标签: groovy xmlslurper

我有以下xml:

<vehicle>
  <car>
    <price>100</price>
    <price>200</price>
  </car>
  <car>
    <price>300</price>
    <price>400</price>
  </car>
</vehicle>

给定一个xml,我们如何获得最里面的元素(在这种情况下,所有<price>元素)?

3 个答案:

答案 0 :(得分:1)

假设你有一个字符串xml中的xml,你应该可以这样做:

List prices = new XmlSlurper().parseText( xml ).car.price*.text()​​

答案 1 :(得分:1)

谢谢蒂姆的回答。我也想出了以下的作品。而且更通用:

def document = slurper.parseText(xml)
def prices = document.'**'.findAll { it.children().size() == 0 }

答案 2 :(得分:0)

我可以建议您使用下一个版本:

def vehicle = new XmlSlurper().parseText(xmlString)
vehicle.car.price.each {println "car's price:"+it}