考虑以下XML:
<LIST>
<Name>Jon</Name>
<Name>Dan</Name>
<Name>Bill</Name>
<Name>Jack</Name>
</LIST>
我需要使用XQuery将输出作为字符串输出为Jon,Dan,Bill,Jack
。
我使用FLWOR表达式和normalize-space
完成了它,然后用逗号替换空格。但是,我相信在XQuery中应该有更好的方法。
答案 0 :(得分:6)
您可以使用string-join
功能执行此操作:
string-join(//Name/text(),",")
fn:string-join($ arg1 as xs:string *,$ arg2 as xs:string)as xs:string
返回通过使用$ arg2作为分隔符连接$ arg1序列的成员而创建的xs:字符串。