xpath:查找其class属性与值匹配且其文本包含特定字符串的节点

Ter*_*non 9 xpath

我想找到这个元素:

<div class="item-price">$0.99</div>
Run Code Online (Sandbox Code Playgroud)

使用XPath,它告诉我一个div,其class属性等于"item-price",其内容字段包含一个美元符号.

kjh*_*hes 17

这个XPath表达式:

//div[contains(@class, 'item-price') and contains(., '$')]
Run Code Online (Sandbox Code Playgroud)

将匹配包含'$' divitem-price类的所有元素.

如果要匹配值中指定了多个CSS样式的情况,则contains()在测试中使用它很有用.@class@class


注意:要获得更强大的解决方案,请应用以下技术以避免意外的子串匹配(item-price比如匹配item-prices):

//div[contains(concat(' ',@class,' '), ' item-price ') and contains(., '$')]
Run Code Online (Sandbox Code Playgroud)

  • 欢迎您提供心灵感应支持。近 5 年后,也许您现在可以选择一个或另一个答案来[**接受**](https://meta.stackexchange.com/q/5234/234215)?:-) (3认同)

Mic*_*Kay 5

//div[@class = 'item-price'][contains(., '$')]
Run Code Online (Sandbox Code Playgroud)