1

c#のxpathの場合、ノードにそのクラスが1つしかないクラスでノードを選択するにはどうすればよいですか?

たとえば、これがあった場合:

<span class="red blue"></span>
<span class="red"></span>

「red」を指定した xpath 式は、2 番目のノードのみを返します。

ありがとう。

4

2 に答える 2

1

次の XPath を使用するだけです。

//span[normalize-space(@class) = 'red']
于 2012-11-23T04:08:24.227 に答える
1

spanを含む @class を持つすべての要素を選択したい場合、XPATH 1.0 でこれを使用redして文字列redが他の場所に表示されないことが確実な場合:@class

//span[contains(@class,'red')]

red が別のクラス (たとえばcentered) 内に表示される可能性がある場合は、より複雑にする必要があります。

//span[contains(concat(' ', normalize-space(@class), ' '), ' red ')]

XPATH 2.0 を使用できる場合は、次のように両方のケースを説明できます。

//span[tokenize(@class,'\s+')[. eq 'red']]
于 2012-11-23T08:04:16.233 に答える