2012-08-01 39 views
1

要連接來自xpath的結果,我使用的是concat(normalize-space(.), '
')(感謝Dimitre Novatchev)。if xPath/xQuery中的條件

現在我想知道如何避免在最後一個元素後面添加
 ......我正在考慮類似於:concat(normalize-space(.), if(XXXXX) then '
' else '')但我無法弄清楚我必須使用什麼條件。

例如,如果我使用xpathExpression/concat(normalize-space(.), ',')和請求的值是(字符串)甲&乙&Ç& d,我期望的輸出是A,B,C,D代替A,B,C,D, ....所以表達可能成爲: xpathExpression/concat(normalize-space(.), if(this is the last element D) then '' else ',')

+0

這是純粹爲了縮進目的嗎? – 2012-08-01 08:38:38

+0

'最後一個元素'是您的輸入xml中的最後一個完全限定元素,還是僅僅是剛剛處理的最後一個元素? – rene 2012-08-01 08:40:18

+0

@Robin Maben:是的。 – Enissay 2012-08-01 08:56:48

回答

1

如果你的XQuery或XPath 2.0中的時候,你可以使用字符串連接功能,例如

string-join(//author, ', ') 

會給你喜歡

結果
Fleming, Rowling, Pullmann 

如果您使用的是XPath 1.0,但沒有簡單的等價物 - 但從您的問題來看,並不清楚上下文是什麼。

+0

我幾分鐘前發現它:)謝謝:) – Enissay 2012-08-01 10:22:59