gpt4 book ai didi

xpath - 在 xpath 中使用父点表示法在 XML 树中查找另一个分支

转载 作者:行者123 更新时间:2023-12-04 06:31:26 24 4
gpt4 key购买 nike

我在 XML 上运行 xslt,它一度将我的当前节点放在树中的以下“item”元素中:

host/device/item

我通过实验发现,下面的 xpath 将 xslt 带回 XML 树的“host”分支,然后成功定位到“host”元素的“trigger”大子元素。
../.././setting/trigger

它有效,但 xpath 语法对我来说似乎很奇怪。点父符号 ../../.当您从 . 阅读它时才有意义从右到左。但是子短语符号 setting/trigger只有从左到右阅读才有意义。整个xpath的“最终含义”相当于说:
host/setting/trigger

中间 ../. 总是真的吗? xpath 的部分(或不管它是多少父级 ../ 级别)总是被忽略以创建最终含义 host/device/trigger ?

最佳答案

.表示自我,您可以将其解释为被忽略。 ./././././././*表示与 ./* 相同, 与 * 相同.

关于读取 XPath,从上下文节点开始分解 host/device/item
../.././setting/trigger , /字符分隔节点测试,因此,LtoR:
..你现在在主机/设备上,
..你现在是主持人
.你还在主持人
setting你现在在主机/设置
trigger你现在在主机/设置/触发器

如果您阅读 RtoL,那么您必须了解,您阅读的不是每个节点测试,而是具有相反含义的每个节点测试,并且您的上下文是您想要结束的地方,因此:

来自 host/setting/trigger (您想要的端点)
trigger (读作 ..),您现在在 host/settingsetting (再次, .. ),您现在在主持人
. ( . ), 你还在主机
.. (读作 * )您现在可能在主机/设备上
.. (读作 * )你现在可能在主机/设备/项目

关于xpath - 在 xpath 中使用父点表示法在 XML 树中查找另一个分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5370544/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com