2013-05-09 37 views
20

我想按類和文本在xpath中查找所有元素。我已經嘗試過,但它不起作用。HTML XPath按類和文本搜索

// [包含(@class, 'MyClass的')] // [文本()= 'QWERTY']

我試圖找到具有類 'MyClass的' 的所有元素文本是「QWERT」(這些將跨度元件)

回答

34
//span[contains(@class, 'myclass') and text() = 'qwerty'] 

//span[contains(@class, 'myclass') and normalize-space(text()) = 'qwerty'] 
+3

該解決方案並沒有爲我工作。這個是 - 「並且包含(。,'qwerty')」。在這裏找到解決方案:http://stackoverflow.com/questions/19503721/xpath-find-a-node-whose-class-attribute-matches-a-value-and-whose-text-contains – Andrejs 2016-06-13 12:08:24

+0

@Andrey Writing「this沒有告訴你所做的事情不是非常有用的。在任何情況下,上述代碼對於本主題中的問題都是正確的,如果您的情況不同,您不能僅僅複製和粘貼代碼就不會感到意外。 – Tomalak 2016-06-13 14:33:01

+1

我並不是故意暗示你的答案是錯的。 (尤其是考慮到upvotes的數量)。但我希望,不管出於何種原因,人們都會發現我的鏈接很有用。問候。 – Andrejs 2016-06-13 14:44:44

9

爲尋找一個XPath表達式通用的解決方案,以搜尋基於類和Te XT:

類是只有名爲 「myclass」:

//*[@class='myclass' and contains(text(),'qwerty')] 

包含 「MyClass的」:

//*[contains(@class,'myclass') and contains(text(),'qwerty')] 
+2

Yay,一年多後,我找到了我的答案幫我。保佑我(宗教。 – 2017-12-21 10:41:14