1. ホーム
  2. xml

[解決済み] XPath: select text node

2022-04-24 13:01:05

質問

以下のXMLを有すること。

<node>Text1<subnode/>text2</node>

XPathで1番目と2番目のテキストノードのどちらかを選択するにはどうしたらいいですか?

こんな感じ。

/node/text()[2]

というのも、これはノード内のすべてのテキストをマージした結果だからです。

どのように解決するのですか?

以下のXMLを有すること。

<node>Text1<subnode/>text2</node> 

のどちらかを選択するにはどうすればよいですか? 2つ目のテキストノードをXPathで処理しますか?

使用方法 :

/node/text()

XML文書の先頭要素("node"という名前)のすべてのテキストノードの子を選択します。

/node/text()[1]

XML文書の先頭要素(名称は"node")の最初のテキストノードの子を選択します。

/node/text()[2]

XML文書の先頭要素(名称:"node")の2番目のテキストノードの子を選択します。

/node/text()[someInteger]

XML文書の先頭要素("node")の、整数番目のテキストノードの子を選択します。以下のXPath式と等価である。

/node/text()[position() = someInteger]