繁体   English   中英

如何通过XPath选择缺少属性值的元素?

[英]How to select element missing an attribute value via XPath?

例如:我想查找没有节点id="year"keywords ,并返回"Train"

<r>
<keywords>
    <node id="family" keyref="Transport"></node>
    <node id="product" keyref="Car"></node>
    <node id="year" keyref="2017"></node>
</keywords>

<keywords>
    <node id="family" keyref="Transport"></node> 
    <node id="product" keyref="Train"></node>       <- FIND THIS
</keywords>

<keywords>
    <node id="family" keyref="Transport"></node>
    <node id="product" keyref="Bike"></node>
    <node id="year" keyref="2017"></node>
</keywords>
</r>

这个XPath

//node[not(@id="year")]

将选择所有没有@id="year"属性值的node元素。 如果只需要keyref属性,则可以附加/@keyref


这个XPath

//keywords[not(node/@id="year")]

将使用@id="year"选择所有没有node子元素的keywords元素。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM