如何解决XPath 命令仅获取特定元素数据而不获取其他元素
假设我有一个 XML 文件 -
<Cars>
<Year> 2021 </Year>
<Model>
<Name> Porsche 911 </Name>
<Year> 2020 </Year>
</Model>
<Model>
<Name> Porsche 911 </Name>
<Year> 2019 </Year>
</Model>
<Model>
<Name> Porsche Cayenne </Name>
<Year> 2019 </Year>
</Model>
</Cars>
现在我想提取2021年,它不是该特定模型的年份,而是编写此 XML 的日期(它是外部的)
但要做到这一点......由于路径上的限制没有被硬编码,我使用了 //Year//text()
但它给出的输出为 [2021,2020,2019,2019]
。我不希望这样,因为如果顺序改变,索引就会改变,这会产生问题。
请帮助使用 XPath 命令,我可以在其中排除内部 Year 标签并仅使用外部标签。
解决方法
试试这个只得到外年
//Year[not(preceding-sibling::Name)]/text()
如果需要,Year
节点(节点)总是 Cars
的直接子节点
//Cars/Year/text()
应该还可以
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。