1

C# で XPath クエリを使用して XML データを解析しようとしています。しかし、私のクエリでは、探している要素がうまく見つかりません (何も見つかりません)。

XPath クエリの何が問題になっていますか? 私の構文はfollowing-sibling間違っていますか?valueXPath を編集して正しい要素を見つけるにはどうすればよいですか?

<attributes>
  <real>
    <name>cover rl</name>
    <value>89.87414122</value>
  </real>
  <real>
    <name>pit depth</name>
    <value>2.35620671</value> <!-- This is the value I need -->
  </real>
<attributes>

失敗する私の XPath クエリ:

ns:attributes/real/name[text() = 'pit depth']/following-sibling::value
4

1 に答える 1

1

あなたは近くにいます。ns:ほとんどの場合、偽の名前空間プレフィックスを取り除きます。また、サンプル入力 XML は、別の開始要素</attributes>ではなく終了要素で終了する必要があることに注意してください。<attributes>

したがって、この XPath:

/attributes/real/name[. = 'pit depth']/following-sibling::value

生成されます:

<value>2.35620671</value>

あなたの要求ごと。

要素の内容のみが必要な場合value:

/attributes/real/name[. = 'pit depth']/following-sibling::value/text()

生成されます:

2.35620671
于 2013-11-04T01:28:29.877 に答える