我想按类和文本查找xpath中的所有元素。我已经试过了,但是行不通。
//*[contains(@class, 'myclass')]//*[text() = 'qwerty']
我试图找到所有的元素,有一个类'myclass'和文本是'qwert'(这些将是span元素)
//span[contains(@class, 'myclass') and text() = 'qwerty']
或
//span[contains(@class, 'myclass') and normalize-space(text()) = 'qwerty']
查找XPath表达式以基于类和文本进行搜索的通用解决方案:
Class是only "myclass":
//*[@class='myclass' and contains(text(),'qwerty')]
类包含 "myclass":
//*[contains(@class,'myclass') and contains(text(),'qwerty')]
假设以下条件:
-
类属性只包含
myclass
-
innerText包含
qwerty
(没有任何前后空格)
您可以使用以下解决方案:
//*[@class='myclass' and text()='qwerty']
如果innerText包含qwerty
以及一些前导和尾随空格,您可以使用以下解决方案之一:
使用
normalize-space()
://*[@class='myclass' and normalize-space()='qwerty']
Using
contains()
://*[@class='myclass' and contains(., 'qwerty')]