【发布时间】:2011-03-28 13:40:57
【问题描述】:
我在 ERB 中创建了一个 XML 模板。我在导出过程中用数据库中的数据填充它。
在某些情况下,存在空值,在这种情况下元素可能为空,如下所示:
<someitem>
</someitem>
在这种情况下,接收导出的客户端希望将其转换为自闭合标签:
<someitem/>
我想看看如何让 Nokogiri 做到这一点,但我还没有看到。有人知道如何使用 Nokogiri 使空 XML 标签自动关闭吗?
更新
一个正则表达式就足以完成我上面指定的操作,但是客户端现在还希望其子项全部为空的标签能够自动关闭。所以这个:
<someitem>
<subitem>
</subitem>
<subitem>
</subitem>
</someitem>
...也应该是
<someitem/>
我认为这需要使用 Nokogiri。
【问题讨论】:
-
我不明白你更新的自动关闭规则。您似乎建议删除没有内容的节点 (
subitem)。但是,如果是这种情况,那么在删除它们之后,父级 (someitem) 也应该被删除,因为它也没有内容。