Gem Nokogiri 删除指定 node 之前的所有 nodes ?

linjunpop · 2012年01月05日 · 最后由 linjunpop 回复于 2012年02月04日 · 2750 次阅读

请问

Nokogiri 如何删除指定 node 之前的所有 nodes?

以及 指定 node 之后所有的 nodes ?

xml = Nokogiri::XML("<request><abc></abc><haha>sdf</haha><def></def></request>"){|config| config.noblanks }

cur_node = xml.search("//def").first

def del_all_prev(node)
  if node.previous_sibling
     del_all_prev(node.previous_sibling)
  end

  node.remove
end

del_all_prev(cur_node.previous_sibling)
需要 登录 后方可回复, 如果你还没有账号请 注册新账号