Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 如何在XQuery中使用分隔符连接字符串而不使用尾随分隔符?_Xml_Xpath_Xquery - Fatal编程技术网

Xml 如何在XQuery中使用分隔符连接字符串而不使用尾随分隔符?

Xml 如何在XQuery中使用分隔符连接字符串而不使用尾随分隔符?,xml,xpath,xquery,Xml,Xpath,Xquery,如何编写一些XQuery来解决以下问题: 这是我目前写的: <friends> {for $lastname in volunteerDatabase/person/name/lastname return concat($lastname/string(), ' +')} </friends> {对于数据库中的$lastname/person/name/lastname 返回 concat($lastname/string(),“+”)} 此查询返回: <F

如何编写一些XQuery来解决以下问题:

这是我目前写的:

<friends>
{for $lastname in volunteerDatabase/person/name/lastname
return
concat($lastname/string(), ' +')}
</friends>

{对于数据库中的$lastname/person/name/lastname
返回
concat($lastname/string(),“+”)}
此查询返回:

<Friends>Geller + Bing + Tribbiani +</Friends>
Geller+Bing+Tribbiani+
我想返回以下内容,其中所有值都用“+”分隔:

<Friends>Geller + Bing + Tribbiani</Friends>
Geller+Bing+Tribbiani
虚拟数据示例:

<?xml version="1.0" encoding="UTF-8" ?>

<volunteerDatabase>
<person age="31" ssn="046187254">
    <name>
        <firstname>Ross</firstname>
        <lastname>Geller</lastname>
    </name>
    <telephone type="landline">
        <number>5534567</number>
    </telephone>
    <telephone type="mobile">
        <number>0851234567</number>
    </telephone>
</person>

<person age="29" ssn="355817204">
    <name>
        <firstname>Chandler</firstname>
        <firstname>Muriel</firstname>
        <lastname>Bing</lastname>
    </name>
    <telephone type="mobile">
        <number>0869932617</number>
    </telephone>
</person>

<person ssn="778123666">
    <name>
        <firstname>Joseph</firstname>
        <firstname>Francis</firstname>
        <lastname>Tribbiani</lastname>
    </name>
    <telephone type="landline">
        <number>01628777</number>
    </telephone>
</person>
</volunteerDatabase>

罗斯
盖勒
5534567
0851234567
经销商
穆里尔
宾
0869932617
约瑟夫
弗兰西斯
特里比亚尼
01628777

感谢您的指导。

无需FLWOR表达式:

<friends>{fn:string-join(volunteerDatabase/person/name/lastname, " + ")}</friends>
{fn:string连接(数据库/person/name/lastname,“+”)
…将文档作为上下文项运行时返回:

<friends>Geller + Bing + Tribbiani</friends>
Geller+Bing+Tribbiani