我想知道为什么反斜杠'\'不能正常工作。在红宝石我需要一个反斜杠,但它给了我三个
@hash["zebra"] = "African land animal with stripes"
@hash["fish"] = "aquatic animal"
@hash["apple"] = "fruit"
def printable
hashs = @hash
words = Array.new
hashs.each {|key, value|
word = '['+key+'] '+ '\\"' + value +'\\"\\n'
words << word
}
words.sort.join("")
end
我希望 “[苹果] \” 水果\ “\ n [鱼] \” 水产动物\ “\ n [斑马] \” 非洲陆地动物条纹\ “”
但是我得到的是 “[apple] \\”fruit \\“\ n [fish] \\”水生动物\\“\ n [斑马] \\”带条纹的非洲陆地动物\“\ n “
所以它给了我三个反斜杠而不是一个。为什么会发生?
你确定你没有得到你想要的:'puts printable#=> [apple] \“fruit \”\ n [鱼] \“水生动物\”\ n [斑马] \“非洲陆地动物与条纹\“\ N'?三个反斜杠中的前两个是单个反斜杠字符;第三个反斜杠转义下面的字符。 –
是的..我不知道为什么它不起作用TT – gin85