XPath只能找到孩子ev('.//div[@class="parent"]/div[@class="children"]');
,但不能找到兄弟姐妹,我需要找到所有出现的序列:
<div class="1"></div><div class="2"></div><div class="3">
不是当只有其中一个存在或者出现错误的顺序时,你有什么建议来实现这个结果?
答案 0 :(得分:0)
我不是100%确定我是否正确解释了您的边界条件,但是如果您想要检测完全关于<div>
的序列其他> 之间的标签你可以使用这个表达式:
.//div[@class='1' and (following-sibling::div)[1][@class = '2'] and ((following-sibling::div)[2][@class = '3'])]
这将返回<div class='1'>
的出现。当然,您可以轻松更改此选项以使用class='2'
或class='3'
返回其他出现的内容。
如果要排除其他标签之间可能发生的情况,可以使用:
.//div[@class='1' and (following-sibling::*)[1][local-name()='div' and @class = '2'] and ((following-sibling::*)[2][local-name()='div' and @class = '3'])]