2010-03-09 8 views
58

Mi XML de muestra de entrada es:niño enésima de un nodo mediante XPath

<root> 
<a> 
    <b>item</b> 
    <b>item1</b> 
    <b>item2</b> 
    <b>item3</b> 
    <b>item4</b> 
</a> 
</root> 

estoy supone que debe seleccionar un nodo b cuya posición es el valor de una variable.

¿Cómo usar el valor de una variable para probar la posición de un nodo?

Respuesta

36

El siguiente debe funcionar:

/root/a/b[2] 

Y si no lo hace, Prueba:

/root/a/b[position()=2] 
+1

Vine aquí para encontrar la diferencia entre estos dos, ¿podrían explicar por qué son diferentes? – Andre

+4

'position()' se refiere a la posición en el dom [2] se refiere al segundo resultado en la lista de resultados. –

Cuestiones relacionadas