【发布时间】:2010-03-17 18:55:24
【问题描述】:
我需要从文档中删除所有字体标签。尝试使用以下 Ruby 代码执行此操作时,字体标签中的其他元素和文本会丢失。在取消链接字体标签之前,我还尝试遍历所有子元素并使它们成为字体标签的兄弟——这也会导致 HTML 丢失。删除可能包含其他元素和/或文本的标签的好方法是什么?
doc.css('font').each do |element|
element.unlink
end
更新(响应第一个解决方案):
使用 node.children 获取子节点然后将子节点移动到字体节点的父节点的问题是,没有一个子节点包含在字体节点中找到的文本。一旦删除(取消链接)字体标签,字体标签中的所有文本也会从文档中消失。
因此,我修改后的问题是:如何使用 Nokogiri 获取字体节点的文本,以及如何在字体节点的位置移动该文本以替换字体标签。
【问题讨论】: