online attribute xpath

attribute - XPath: ¿Cómo seleccionar un nodo con algún atributo por índice?



xpath php (2)

Tengo varios nodos con algún atributo particular y necesito seleccionar uno de ellos por índice. Por ejemplo, necesito seleccionar la segunda clase <div> con ''test'' - //div[@class=''test''][2] no funciona.

¿Hay alguna forma de seleccionar un nodo con algún atributo por índice? ¿Cómo hacerlo?


Creo que por especificación XML, no se considera que los atributos tengan un orden.
Note that the order of attribute specifications in a start-tag or empty-element tag is not significant.
Mira here . Creo que sería mejor rediseñar tu estructura de modo que el orden de los atributos no describa nada. Si puede dar más detalles, podremos ofrecer sugerencias.

EDITAR: vuelve a leer su publicación, parece que está tratando de encontrar el orden de los nodos y no el orden de los atributos. Se permite el orden de nodo y su sintaxis se ve bien de mano a mano. ¿En qué software estás haciendo esto?


Esta es una pregunta frecuente

En XPath, el operador [] tiene una precedencia más alta (se une más fuerte) que el // pseudooperador.

Por eso, la expresión:

//div[@class=''test''][2]

selecciona todos los elementos div cuyo atributo de class es "prueba" y quiénes (los elementos div ) son el segundo hijo div de su padre. Esto no es lo que quieres.

Uso :

(//div[@class=''test''])[2]