我想将"her"
转换为"\"her"
。
我尝试使用insert
方法:
>> "her".insert(0,'\"')
=> "\\"her"
和
>> "her".insert(0,'"')
=> ""her"
他们都没有给我我想要的东西:"\"her"
答案 0 :(得分:2)
"her".insert(0,'"')
实际上会返回"\"her"
,这就是你首先想要的。
如果您想获得"\"her\""
,可能需要使用Object#inspect:
"her".inspect
=> "\"her\""
或者,您可以简单地在开头和结尾连接引号:
'"' + "her" + '"'
=> "\"her\""
答案 1 :(得分:0)
如果您只想要"\"her"
a = "her".insert(0,'\"')
#=> "\\\"her"
puts a
#=> \"her
如果您想要输出"\"her\""
a = "her"
#=> "her"
b = '\"'+a+'\"'
#=> "\\\"her\\\""
puts b
#=> \"her\"
答案 2 :(得分:0)
我认为您的代码很好,您只是不知道控制台中\\
的含义。
第一个\
是转义字符,第二个\
是字符本身。
您将在文本\"her
中看到foo.txt
,如您所期望的那样:
File.write("foo.txt", "her".insert(0,'\"'))