1

個別の値を取得する必要があります //name() 個別の値(//*/name()) なし

私はこのようにしようとしましたが、うまくいきません。

//*/name()[.!=//preceding-sibling::*]

どうすれば修理できますか?

4

1 に答える 1

4

を使用XPath 1.0して個別の値を取得する

name 属性については、

/*/*[not(@name = preceding::*/@name)]

ノード名については、

/*/*[not(name() = preceding::*/name())]

私のサンプル XML:

<?xml version="1.0" encoding="UTF-8"?>
<root>
    <friend1 name="abc"/>
    <friend2 name="def"/>
    <friend3 name="abc"/>
    <friend1 name="abcd"/>
    <friend5 name="abcd"/>
    <friend6 name="xyz"/>
    <friend8 name="789"/>
    <friend0 name="pqr"/>
    <friend9 name="lmn"/>
    <friend2 name="lmn"/>
    <friend5 name="123"/>
    <friend7 name="456"/>
    <friend12 name="789"/>
</root>
于 2013-04-08T19:55:42.617 に答える