0

目標ノード間に無関係なノードが存在する場合がある Xpath を使用してノードを取得するにはどうすればよいでしょうか。

通常、次のような形式のxmlファイルがあります。

<body>
    <target>
         <goal>Text I want to obtain</goal>
    </target>
    <target2>
         <goal>Second Target I want to obtain</goal>
    </target2>
<body>

そして、target のゴールと target2 のゴールを別々の文字列で投げる必要があります。そこで、Xpath「//body/target/goal」で「取得したいテキスト」を取得し、Xpath「//body/target2/goal」で「取得したい2番目のターゲット」を取得しました。

とてもシンプルです。

ただし、後で、ターゲットとゴール (またはターゲット 2 とゴール) の間に、次のように別のノード (不明) が存在する可能性があることがわかりました。

<body>
    <target>
         <annoying>
              <goal>Text I want to obtain</goal>
         </annoying>
    </target>
    <target2>
         <noidea>
              <goal>Second Target I want to obtain</goal>
         </noidea>
    </target2>
<body>

2 つのターゲットを区別する必要があるため、"//goal" で単にゴールを累積することはできません。取得する必要がある各テキストを取得するには、どのような 2 つの Xpath が必要ですか?

事前にどうもありがとうございました

4

1 に答える 1