【发布时间】:2015-03-08 03:40:49
【问题描述】:
我有一个充满嵌套 item 节点的 xml 文档。在大多数情况下,每个item 都有一个name 元素。我想检查item 是否有name 元素,如果不存在则返回默认名称。
<item>
<name>Item 1</name>
</item>
<item>
<items>
<item>
<name>Child Item 1</name>
</item>
<item>
<name>Child Item 2</name>
</item>
</items>
</item>
当我向node.at('name') 询问没有name 元素的节点时,它会从树的更下方的子节点中选择下一个节点。在上述情况下,如果我在第二个item 上询问at('name'),我会得到"Child Item 1"。
【问题讨论】:
-
xml 中的第二项是什么?您使用的是哪个 xml 解析库?结果是预期的行为吗?
-
不确定它是如何改变的,但帖子的主题最初是“Nokogiri:无法确定元素是否存在”。
-
@ChrisA。在这个网站上,我们尽量将标签放在标题之外; sawa 编辑了您的问题以更好地符合公认的标准。