#author("2020-09-10T11:24:51+00:00","default:src128","src128")
#author("2021-01-12T04:46:29+00:00","default:src128","src128")
&tag(XPath);
*目次 [#l2c0ffb7]
#contents
*参考情報 [#j52ecd2e]
-[[XSLTスタイルシート書き方講座(2):XPathの書き方の基本:http://www.atmarkit.co.jp/fxml/tanpatsu/10xslt/xslt02.html]]…XPathの書き方
-[[δtech -DeltaTECH- JS:document.evaluate()の使い方がやっと分かった…:http://deltatech.blog90.fc2.com/blog-entry-332.html]]…XPathの戻り値


*XPathの例 [#e481f9be]

**基本 [#fbf71d30]
-[[XPath の例:https://msdn.microsoft.com/ja-jp/library/ms256086(v=vs.120).aspx]]がわかりやすい

,式,説明,備考
,//author,ドキュメント内の全てのauthor要素,nodeがどの要素でも常にrootからとなるのに注意
,./author,現在のコンテキスト内の子author要素,現在のノードの直下
,.//author,現在のコンテキスト内の子author要素,現在のノードの子孫

「//」が起点からの要素と説明しているサイトもあるが、実際は常にrootからになるで注意が必要。
**指定されたclass属性を持つdivタグを取得する [#f480bec0]
-サンプル
 <div class="row">行1</div>
-指定方法
 //div[@class='row']
**指定されたclass属性を含むdivタグを取得する(class属性が複数ある場合) [#s053d8fe]
-サンプル
 <div class="row test">行</div>
-指定方法
-そのままのクラス名を使う方法。この場合"row test"はマッチするが"test row"はマッチしない。
 //div[@class='row test']
-containsを使う方法
 //div[contains(@class, 'row')]

**指定されたclass属性を一部含むdivタグを取得する [#x983e729]
-サンプルは"one two three"。"one two"を含むものをすべてさがしたい。
 <div class="one two xxx">行1</div>
 <div class="one two yyy">行2</div>
-この場合"="はつかえないのでcontainsをand条件で連結するか、containsでそのまま2つのクラス名を指定する。
 //div[contains(@class, 'one') and contains(@class, 'two')]
 //div[contains(@class, 'one two')]






トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS