ROR +使用NOKOGIRI修改包含多个文本的XML文本

问题描述:

寻找能够修改ruby中.docx文件的内容。在这里,在这个代码中我已经完成了在xml文件中的修改。ROR +使用NOKOGIRI修改包含多个文本的XML文本

只有当元素被修改,但想取代所有的元素"FirstName""DEMONAME"

doc = Nokogiri::XML(IO.read('word/document.xml')) 
doc.at('//text()[.="FirstName"]').content = 'DEMONAME' 
File.open('word/document_modify.xml','w') do |f| 
    f.puts doc 
end 

请建议一些事情修改为5次或更多次FirstName整个文档。 在此先感谢。

+0

查看下面的解决方案... – Rubyist 2012-02-02 07:29:13

最后我得到了解决方案来解决这个问题。

doc = Nokogiri::XML(IO.read('word/document.xml')) 
(doc/'//text()[.="FirstName"]').each do |field| 
    doc.at('//text()[.="FirstName"]').content = 'DEMONAME' 
end 

所有最好的!