Xpath:查找包含空格的类的元素
所以我有这样的元素Xpath:查找包含空格的类的元素,xpath,Xpath,所以我有这样的元素 <li class="attribute "></li> # note the space <li class="attribute"></li> 注意空格 使用xpath//li[@class=“attribute”]将获得第二个元素,但不是第一个元素。如何使用相同的xpath获取这两个元素?此xpath 1.0表达式 //li[contains(concat(' ', normalize-space(@class),
<li class="attribute "></li> # note the space
<li class="attribute"></li>
注意空格
使用xpath
//li[@class=“attribute”]
将获得第二个元素,但不是第一个元素。如何使用相同的xpath获取这两个元素?此xpath 1.0表达式
//li[contains(concat(' ', normalize-space(@class), ' '),
' attribute ')]
将选择包含属性
子字符串的具有类
属性的所有li
元素,无论其是否具有前导空格或尾随空格
如果只想将
属性
与可能的前导空格和尾随空格(没有其他字符串值)匹配,只需使用normalize-space()
:
我相信这个问题与这里讨论的类似:比赛似乎解决了这个问题。然而,我确实需要XPath1.0的解决方案。作为参考,类似的问题:GOLD!非常感谢。第一个表达式也可以简化为:
//li[contains(concat('',normalize space(@class)),'attribute')]
@Jonathan:第一个XPath实际上是为了匹配以下所有情况:“attribute”
,“attribute”
,“attribute second”
,“一个属性二个”
等,但不是“attributeXYZ”
,例如。
//li[normalize-space(@class) = 'attribute']