0

現在、属性値 val=y を持つ最初の子と同じ属性 val=y を持つ最後の子を同時に見つける xpath ステートメントを実行しようとしています。どちらかはできますが、両方はできません。他の同様の投稿も見ましたが、この場合は機能しないようです。これが私が試したことです。

これを試しましたが、一致しませんでした。

child::*[@val='y'][1]/child::*[@val='y'][last()]

これを試してみたところ、私のxmlに文字化けしたテキストがたくさんありました。

child::*[@val='y'][1] | child::*[@val='y'][last()]

条件を切り替えてみましたが、それでも何も起こりませんでした。

child::*[last()][@val='y']/child::*[1][@val='y']

では、なぜ正しい一致を取得できないのでしょうか。他の投稿の同様のソリューションが機能しないのはなぜですか?

4

1 に答える 1

0

これを試して:

child::*[@val='y'][position() = 1 or position() = last()]
于 2013-10-23T03:27:32.610 に答える