2016-11-08 9 views
2
<w> hello </w> <w> world </w> 

こんにちは、xqueryを使用してxmlファイルから次の単語を取得する方法を知りたいと思います。例えば。私は$ xに「こんにちは」を割り当てました。どのように「世界」を返すのですか?どうもありがとう。文字列のxquery - following-sibling

答えて

1

これを実行するにはいくつかの方法があります。おそらく、状況に応じて最適な方法が考えられます。

$x/following-sibling::*[1] 

それとも何らかの理由であなたがそれらの2つの要素間の空白テキストノードカウントする場合があります:あなたがしている

$x/following-sibling::node()[2] 
1

を一つのケースでは、あなただけの次の要素ノードを取得したい場合がありますfollowing-sibling軸を探します。

let $document := <document> 
    <w>foo</w> 
    <w>bar</w> 
    <w>hello</w> 
    <w>world</w> 
    <w>batz</w> 
</document> 
let $x := "hello" 
return ($document//w[. eq $x]/following-sibling::w)[1]