Xml xPath/xQuery中的if条件

Xml xPath/xQuery中的if条件,xml,xpath,if-statement,concatenation,Xml,Xpath,If Statement,Concatenation,为了连接xpath的结果,我使用了concat(规范化空间(.), ;)(感谢) 现在我想知道如何避免添加 在最后一个元素之后。。。我在考虑这样的事情:concat(规范化空间(.),if(XXXXX)then' ;'else'),但我不知道我必须使用什么条件 例如,如果我正在使用xpathExpression/concat(规范化空间(.),','),并且请求的值是(字符串)A&B&C&D,那么我期望的输出是A,B,C,D,而不是A,B,C,D,。。。。因此表达式可能会变成:

为了连接xpath的结果,我使用了
concat(规范化空间(.),
;)
(感谢)

现在我想知道如何避免添加

在最后一个元素之后。。。我在考虑这样的事情:
concat(规范化空间(.),if(XXXXX)then'
;'else')
,但我不知道我必须使用什么条件


例如,如果我正在使用
xpathExpression/concat(规范化空间(.),',')
,并且请求的值是(字符串)A&B&C&D,那么我期望的输出是
A,B,C,D
,而不是
A,B,C,D,
。。。。因此表达式可能会变成:
xpathExpression/concat(规范化空格(.),if(这是最后一个元素D),然后是“else”,)
例如,如果您在XQuery或XPath 2.0中,您可以使用字符串连接函数

string-join(//author, ', ')
会给你一个这样的结果

Fleming, Rowling, Pullmann

如果您使用的是XPath 1.0,没有简单的等价物,但是您的问题并不清楚上下文是什么。

例如,如果您使用的是XQuery或XPath 2.0,您可以使用字符串连接函数

string-join(//author, ', ')
会给你一个这样的结果

Fleming, Rowling, Pullmann

如果您使用的是XPath 1.0,没有简单的等价物-但从您的问题中不清楚上下文到底是什么。

这纯粹是为了缩进的目的吗?“last element”是输入xml中最后一个完全限定的元素还是恰好是最后一个被处理的元素?@rene:列表中最后一个被处理的元素。。。我在上面添加了一个示例:)这纯粹是为了缩进吗?“last element”是输入xml中最后一个完全限定的元素还是恰好是最后一个正在处理的元素?@rene:列表中最后一个要处理的元素。。。我在上面添加了一个示例:)我几分钟前找到了:)谢谢:)我几分钟前找到了:)谢谢:)