Groovy - XmlSlurper - найти самый внутренний элемент
У меня есть следующий XML:
<vehicle>
<car>
<price>100</price>
<price>200</price>
</car>
<car>
<price>300</price>
<price>400</price>
</car>
</vehicle>
Учитывая XML, как мы можем получить самые внутренние элементы (в этом случае все<price>
элементы)?
3 ответа
Решение
Спасибо Тим за ответ. Я только что разобрался со следующими работами. И является более общим:
def document = slurper.parseText(xml)
def prices = document.'**'.findAll { it.children().size() == 0 }
Предполагая, что у вас есть XML в строке xml
, вы должны быть в состоянии сделать:
List prices = new XmlSlurper().parseText( xml ).car.price*.text()
Могу ли я предложить вам следующий вариант:
def vehicle = new XmlSlurper().parseText(xmlString)
vehicle.car.price.each {println "car's price:"+it}