XPath比较节点属性

时间:2016-11-21 13:34:35

标签: xpath

我有一个xml文档,如下所示:

<style>
.page-template-pdf {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

    .page-template-pdf .header-pdf {
        position: absolute;
        top: 30px;
        left: 30px;
        right: 30px;
        border-bottom: 1px solid #888;
        text-align: center;
        font-size: 18px;
        color: orangered;
    }

    .page-template-pdf .footer-pdf {
        position: absolute;
        bottom: 30px;
        left: 30px;
        right: 30px;
    }
</style>

我想选择所有“bar”节点,其中存在2个不同的baz子节点,其中b的值相同但c的值不同。 所以,在上面的例子中,我想选择前两个节点,而不是第三个节点。

这是我的尝试:

// bar [baz / @ b = follow-sibling :: bar / baz / @ b and baz / @ c!= following-sibling :: bar / baz / @ c]

我的问题是,虽然这适用于示例,但它没有按照我的意愿执行:如果存在另一个baz节点,如果bar / @ b具有相同的值,并且存在另一个baz节点,则它选择节点哪个bar / @ c具有不同的值;如果存在另一个bar / @ b相同且bar / @ c不同的baz节点,则不会。

是否可以结合这两个条件,以便他们在兄弟姐妹之后检查SAME?

0 个答案:

没有答案