是否有可能使用通配符选择项目的XPath?例如,我尝试//img[@class='poly *']
选择这些img
元素,
<img class="poly x1" title="title1">
<img class="poly x2" title="title2">
<img class="poly x3" title="title3">
但它没有用。
答案 0 :(得分:2)
let heightConstraint = heightAnchor.constraint(equalToConstant: 200)
heightConstraint.isActive = true
//later in code
heightConstraint.constant = 400
不是XPath中的通配符,所以
*
将匹配所有//img[@class='poly *']
元素,img
属性值完全等于class
- 字面上以poly *
字符结尾。
您可以改为使用
*
或允许//img[starts-with(@class,'poly')]
出现在poly
属性值中的任何位置的更健壮的习惯用法,而不匹配class
等。人。错误地说:
polymorphism
注意:XPath 2.0具有支持正则表达式的//img[contains(concat(' ',@class,' '), ' poly ')]
函数。