Xquery字符串连接函数

时间:2013-07-24 14:26:55

标签: xquery

我正在使用这段代码:

<Statuses>{"<![CDATA[[Status] = ",string-join($ListOfStatus/Status,"' OR [Status] = '"),"']]>" }</Statuses>

我需要得到一个像:

这样的元素
<Statuses><![CDATA[[Status] = 'Pending' OR [Status] = 'Submitted']]></Statuses>

但是我在第一个引号和第一个状态之间得到一个空白字符('待定而不是'待定,另一个在最后一个状态和最后一个引用之间,因此已提交'而不是已提交'。

有谁知道如何摆脱这些?

1 个答案:

答案 0 :(得分:0)

表达式返回的是一系列字符串,它们以空格分隔输出。如果要将它们连接成单个字符串,请使用concat

<Statuses>{concat("<![CDATA[[Status] = '",string-join($ListOfStatus/Status,"' OR [Status] = '"),"']]>")}</Statuses>

但请注意,在字符串中添加CDATA声明与创建CDATA装饰文本节点不同。