groovy xml-parsing gpath

groovy - Necesito una consulta GPath para seleccionar un nodo usando un índice numérico



xml-parsing (1)

def html = """ <html> <head> <title>test</title> </head> <body> <div>div1</div> <div>div2</div> </body> </html>""" def xml = new XmlSlurper().parseText(html) assert xml.body.div[0].text() == "div1" assert xml.body.div[1].text() == "div2"

También puede usar métodos de tipo de colección en el nodo div como .each / .find, por ejemplo:

xml.body.div.find { it.text() == "div2" }

EDITAR:

Para aclarar mi respuesta un poco, dado el HTML en la misma estructura que la muestra que mencioné anteriormente pero con varios contenidos, siempre puede acceder al segundo div usando el índice de matriz 1:

xml.body.div[1]

¿Cómo selecciono de un documento html analizado un elemento específico dado su índice?

Por ejemplo: ...

<div>div1</div> <div>div2</div>

Quiero seleccionar el segundo div pero me parece que GPath no ofrece una solución como Xpath.