当我插入一个字符串数组时,它包含引号'\“'的转义字符,我如何插入它没有引号?
string_array = ["a","b","c"]
p "#{string_array}" # => "[\"a\", \"b\", \"c\"]"
答案 0 :(得分:3)
使用p "#{string_array}"
与puts "#{string_array}".inspect
请记住,因为p对象与puts object.inspect
相同与(在您的情况下,您在字符串上调用p)相同:
puts string_array.to_s.inspect
(每当有人要求某个数组成为一个字符串(要打印等等)时,总会调用to_s。
所以你实际上正在检查数组返回的字符串,而不是数组本身。
如果您只想打印[“a”,“b”,“c”],那么使用p string_array
而不是p "#{string_array}"
如果要将数组中的所有字符串连接在一起,可以使用String#join来实现。例如。如果我想在每个值之间加一个逗号和空格,就像messick一样,我会使用:
puts string_array.join(", ")
这将输出:“a,b,c”
答案 1 :(得分:2)
您需要join
数组元素。
["a","b","c"].join(', ')