使用Ruby我將如何能夠在寫入輸出文件的某些變量中自動轉義單引號和雙引號。來自PHP我正在尋找一個addslashes類型的函數,但在Ruby中似乎沒有一個簡單的解決方案。在Ruby中是否存在addslashes等價物?
require "csv"
def generate_array(file)
File.open("#{file}" + "_output.txt", 'w') do |output|
CSV.foreach(file) do |img, _, part, focus, country, loc, lat, lon, desc, link|
output.puts("[#{lat}, #{lon}, '#{img.downcase}', '#{part}', '#{loc}', '#{focus}', '#{country}', '#{desc}', '#{link}'],")
end
end
end
ARGV.each do |file|
generate_array(file)
end
輸出是純文本,格式是一種二維數組風格,在一個JavaScript程序我正在使用。 例如[123.123,123.123,'img','part','loc'... etc], 當其中一個字符串變量包含單引號時會出現問題。 –
如果輸出應該在JavaScript中使用,爲什麼不節省大量的時間和精力並使用JSON? JSON定義良好,並且具有豐富的庫支持:您只需構建正確的Ruby數據結構,在其上調用'to_json',然後轉到更有趣的問題。 –
raina77ow,並且mu太短是的,這似乎是它的方式。謝謝 –