如何匹配类属性

时间:2012-12-27 13:32:35

标签: xpath

我的文档包含标有class="iana-group-15 iana-type-1"class="iana-group-15 iana-type-1 iana-type-3"的元素。我想匹配iana-type-1属性中class的所有元素。 CSS的符号[class~=iana-type-1].iana-type-1对于匹配它非常有用。

使用XPath我匹配:

@class="iana-type-1"
    or starts-with(@class, "iana-type-1 ")
    or contains(@class, " iana-type-1 ")
    or substring(@class, string-length(@class) - 11) = " iana-type-1"

这很痛苦。有没有更好的方法可以让它像CSS选择器一样简单?

1 个答案:

答案 0 :(得分:2)

你可以用空格包围。即:

contains(concat(" ", @class, " "),  " iana-type-1 " )

或者在XPath 2中:

tokenize(@class, " ") = "iana-type-1"

或者只是使用css。