Дочерние узлы для строки с запятой в Xpath? - PullRequest
4 голосов
/ 01 февраля 2012

У меня есть XML, который выглядит так:

<node1>
 <item>hello</item>
 <item>world</item>
</node1>

Я хотел бы вывести следующее, используя выражение XPath:

hello, world

Возможно ли это с XPath 1.0? Я искал вокруг, но не смог ничего найти.

Спасибо, Cinegod

Ответы [ 2 ]

10 голосов
/ 01 февраля 2012

XPath 2.0 может сделать string-join(/node1/item, ', ').В XPath 1.0 вы не можете этого сделать, вам потребуется использовать основной язык, такой как XSLT, или процедурный язык, представляющий XPath API, для итерации по узлам и объединения значений.

3 голосов
/ 08 ноября 2015

В XPath 1.0 вы можете сделать это, используя concat(), например ::

concat(node1/item[1], ", ", node1/item[2])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...