xpath チュートリアル
xpathを使い始める
サーチ…
備考
XPathは、XML文書の一部を扱うための言語です。
これはXSLTで使用され、XQueryのサブセットです。ライブラリはほとんどの他のプログラミング言語でも利用可能です。
XPathは、W3Cによって発行された仕様を持つ国際標準です。
- XPath 1.0: XMLパス言語(XPath)、バージョン1.0
- XPath 2.0: XMLパス言語(XPath)2.0(第2版)
- XPath 3.0: XMLパス言語(XPath)3.0
バージョン
サンプルXML(名前空間なし)
次に、XPathの例を記述するサンプルXMLを示します。
<r>
<e a="1"/>
<f a="2" b="1">Text 1</f>
<f/>
<g>
<i c="2">Text 2</i>
Text 3
<j>Text 4</j>
</g>
</r>
テキストを選択
サンプルXML(名前空間なし):
このXPath、
/r/f/text()
この文字列値を持つテキストノードを選択します:
"Text 1"
そして、このXPath、
string(/r/f)
f
の文字列値を返します。
"Text 1"
要素を選択する
サンプルXML(名前空間なし):
このXPath、
/r/e
この要素を選択します:
<e a="1"/>
一般的なHTML操作
入力HTML DOMが
<html>
<body>
<a>link</a>
<div class='container' id='divone'>
<p class='common' id='enclosedone'>Element One</p>
<p class='common' id='enclosedtwo'>Element Two</p>
</div>
</body>
</html>
特定のIDを持つ要素をページ全体で検索する
//*[@id='divone'] # Returns <div class='container' id='divone'>
特定のパスの特定のIDを持つ要素を見つける
/html/body/div/p[@id='enclosedone'] # Returns <p class='common' id='enclosedone'>Element One</p>
特定のIDとクラスを持つ要素を選択する
//p[@id='enclosedone' and @class='common'] # Returns <p class='common' id='enclosedone'>Element One</p>
特定の要素のテキストを選択する
//*[@id='enclosedone']/text() # Returns Element One
ブラウザコンソールでのXpathのテスト
xpathをテストする簡単な方法は、ブラウザの開発者ツールコンソールにあります。
フォーマットは
$x('//insert xpath here')
$ - セレクタであることを示します。
x - xpathsを使用していることを指定します。
例:
$x("//button[text() ='Submit']")
このコマンドが入力されると、Submitと等しいテキストのボタンである要素のすべての出現を返します。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow