XPathを使用してCSSクラスで要素を見つけるにはどうすればいいですか? 質問する

XPathを使用してCSSクラスで要素を見つけるにはどうすればいいですか? 質問する

私のウェブページには、という名前divのがあります。classTest

どうすれば見つけられますかXPath?

ベストアンサー1

このセレクターは動作するはずですが、適切なマークアップに置き換えるとより効率的になります。

//*[contains(@class, 'Test')]

または、探している要素が であることがわかっているので、次のようになりますdiv

//div[contains(@class, 'Test')]

class="Testvalue"しかし、これはまたは のようなケースにも一致するためclass="newTest"、コメントで提供されている @Tomalak のバージョンの方が適しています

//div[contains(concat(' ', @class, ' '), ' Test ')]

正しく一致することを確実にしたい場合は、normalize-space 関数を使用して、クラス名の周りの余分な空白文字を削除することもできます (@Terry が言及しているように):

//div[contains(concat(' ', normalize-space(@class), ' '), ' Test ')]

これらすべてのバージョンでは、ドキュメント内のすべての要素を特定の条件で検索する場合を除き、* は実際に一致させたい要素名に置き換えるのが最適であることに注意してください。

おすすめ記事