Re[5]: XPath. Ссылка на атрибут узла внутри вложенного критерия
От: PA  
Дата: 14.12.12 21:41
Оценка: 4 (1)
Здравствуйте, Eugeny__, Вы писали:

E__>Здравствуйте, Аноним931, Вы писали:


А>>Ответ был дан на поставленный вопрос. Значит, "не по теме" был вопрос, а не ответ.


E__>Кстати, тоже была подобная задача.

E__>Только с уточнением.
E__>Если взять xml ниже и xpath "//row//c[@ID='2']", то как выбрать определенный элемент этого результата?

E__>Т.е. //row//c[@ID='2'] выбирает все элементы с ID=2, но если я попробую сделать //row//c[@ID='2'][1], //row//c[@ID='2'][2], //row//c[@ID='2'][3], то для первого случая я получу то же, что для изначального выражения, и пустой результат для остальных двух. А хотелось бы получить результаты "value1", "value2" и "value3" соответственно. Вот я так и не нашел, как такое можно замутить.


Классическая ошибка — //row//c[@ID='2'][2] — означает выбрать второй элемент "с" с указанным атрибутом, принадлежащий элементу "row".
Чтобы выбрать второй элемент в сформированной выборке, надо эту самую выборку обозначить, вот таким образом:
(//row//c[@ID='2'])[2]
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.