子节点用逗号分隔字符串和Xpath?

时间:2012-02-01 18:13:00

标签: xml xpath

我的XML看起来像这样:

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

我希望使用XPath表达式输出以下内容:

hello, world

XPath 1.0可以实现吗?我一直在四处寻找但却找不到任何东西。

谢谢, Cinegod

2 个答案:

答案 0 :(得分:10)

XPath 2.0可以string-join(/node1/item, ', ')。使用XPath 1.0,你不能这样做,你需要使用像XSLT这样的宿主语言或暴露XPath API的过程语言来迭代节点并连接值。

答案 1 :(得分:3)

在XPath 1.0中,您可以使用concat()来完成此操作,例如:

concat(node1/item[1], ", ", node1/item[2])