0

これが私の XML だとします。

<myxml>
   <data key="true">Apple</data>
   <data key="true">banana</data>
   <data1 key="true">banana</data1>
   <data>Apple</data>
</myxml>

key="true"attributeと node value =を含むタグの XPath 式が必要ですApple

さまざまな組み合わせを試しましたが、成功しませんでした。

  • 属性にはこれを使用しますxpath="/myxml/data[@key='true']
  • ノード値にはこれを使用しますxpath = "/myxml/data[. ='Apple']/
  • また、これを試してくださいxpath = "/myxml/data[.='Apple'][@key='true]/

しかし、エラーが発生しました。

xpath に複数のタグがあります。/mappings/mapping[data[@iskey='true'][.='apple'] and data1[@iskey='true'][.='banana']/

このパスに誤りがあります。

属性とノード値の両方を一緒に指定するにはどうすればよいですか?

4

1 に答える 1

3

「and」演算子を使用する必要があります。

あなたの例から:

    /myxml/data[.='Apple' and @key='true']

xpath 演算子の詳細については、http://www.w3schools.com/xpath/xpath_operators.aspを参照してください。

于 2012-05-10T20:31:46.753 に答える