属性值中的XPath通配符
本文关键字:XPath 通配符 属性 | 更新日期: 2023-09-27 18:18:47
我使用以下XPath来匹配类span的属性:
//span[@class='amount']
我想匹配所有具有"amount"类属性的元素,但也可能具有其他类。我想我可以这样做:
//span[@class='*amount*']
但这不起作用…我该怎么做呢?
使用以下表达式:
//span[contains(concat(' ', @class, ' '), ' amount ')]
您可以单独使用contains
,但也可以匹配someamount
之类的类。在以下输入上测试上述表达式:
<root>
<span class="test amount blah"/>
<span class="amount test"/>
<span class="test amount"/>
<span class="amount"/>
<span class="someamount"/>
</root>
它将选择前四个span
元素,但不选择最后一个
您需要使用contains方法。请参阅如何使用XPath contains()。
//span[contains(@class,'amount')]