3

特定の文字列 (「ビデオ」または「色」または「白黒」) を含む要素を選択する次の XPATH があります。私が抱えている問題は、選択された要素の 1 つに "video reprints" という文字列が含まれていることです。それは正しいのですが、この特定の要素を選択したくありません。次のように XPATH に NOT を指定できると思ったのですが...

//div/A[contains(., 'video') or contains(., 'color') or contains(., 'black and white') and (not (contains(., 'reprint')))]

上記の選択から文字列「再版」を含む選択を削除する方法について何か考えはありますか?

4

2 に答える 2

1

これは優先順位の問題です。すべての or-ed 条件を括弧で囲むだけです。

[( ... or ... or ...) and (not(...))]
于 2012-10-18T14:35:13.183 に答える
0

実際には、括弧の使い方が原因なので、これは機能します:

//div/A[(contains(., 'video') or contains(., 'color') or contains(., 'black and white')) and not(contains(., 'reprints'))]
于 2012-10-18T14:36:02.993 に答える