xml - 使用 XPATH 从节点列表中选择唯一元素列表

标签 xml dom xpath

在 XPATH 中是否可以从一个有许多相同元素的节点中选择一个唯一元素列表?

<Deserts>
 <Desert Code="C1">Popsicle<Desert>
 <Desert Code="H2">Ice Cream<Desert>
 <Desert Code="C1">Popsicle<Desert>
 <Desert Code="T1">Cheese Cake<Desert>
</Deserts>

在这个例子中,我希望结果列表只有 3 个节点(冰棒/冰淇淋/芝士蛋糕)。

如何使用 Xpath 选择这样的列表?

最佳答案

尝试以下 xpath:

/Deserts/Desert[not(@Code=preceding-sibling::Desert/@Code)]

它将通过检查 Desert Code 属性返回不同的沙漠。

关于xml - 使用 XPATH 从节点列表中选择唯一元素列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6070502/

相关文章:

javascript - 使用 Vanilla Javascript 检测滚动以帮助更改导航 CSS

java - XML 解析器保留所有空白、属性排序、引号、CDATA、命名空间等

java - 在 Resin 和 Spring-WS 中加载 XML Schema 文档的问题

java - 配置应用程序登录 ActiveMQ,但 log4j2 失败

javascript - 需要一种方法从许多相同元素之一获取 attr

PHP DOM loadHtmlFile I/O 异常

c# - 在 C# 中从 XML 文件中获取键的值

xml - 如何通过通用XPATH找到在不同位置具有多个属性的Element?

python - 如何在lxml解析中获得准确的日期?

python - 如何使用 lxml 和 python 从表中查找特定的 xpath td 类