我得到了一個ruby腳本,它採用XML文件並從它們創建CSV。這個CSV使用分號作爲分隔符 - >但是,XML的內容包含這些標籤:在Ruby中從CSV中刪除具體字符串
- &
- <
- >
而這當然打破了CSV文件的結構。我需要清理它。這種清潔劑必須在Ruby中書寫。我嘗試下一個代碼,但是這完全破壞了文件。
#Clean up CSV file
#Remove: & \< >
file_names = ['terms.csv']
file_names.each do |file_name|
text = File.read(file_name)
new_contents = text.gsub(/&/, " and ")
# To merely print the contents of the file, use:
puts new_contents
# To write changes to the file, use:
File.open(file_name, "w") {|file| file.puts new_contents }
end
file_names.each do |file_name|
text = File.read(file_name)
new_contents = text.gsub(/</, " < ")
puts new_contents
File.open(file_name, "w") {|file| file.puts new_contents }
end
file_names.each do |file_name|
text = File.read(file_name)
new_contents = text.gsub(/>/, " > ")
puts new_contents
File.open(file_name, "w") {|file| file.puts new_contents }
end
我從來不使用Ruby--這是我的第一次接觸。有更好的方法如何做到這一點?
這應該是一條評論。或者給出更多關於如何使用它的解釋。 – Toto
是的,原始腳本使用Nokogiri,但我不能改變它。我需要使用最終的CSV並從該文件中刪除這些標籤。 PS:XML文件在內容部分包含這些標籤。 – Firejs
@Toto這是正確的,但我沒有足夠的傷心,重新提交我的提交。謝謝你的評論:D Firejs給了一個去! – Juksefantomet