Ruby irb中单引号转义的怪异行为
输出为Ruby irb中单引号转义的怪异行为,ruby,Ruby,输出为I身高6'2英寸 但在irb中 如果我输入这个字符串,我身高6英尺2英寸,没有输入 我身高6英尺2英寸 注意转义字符在输出中的位置 为什么转义字符的位置发生了更改?因为在IRB中,“我身高6英尺2英寸”。正在进行检查,这与放置“我身高6英尺2英寸”相同。在不同类型的引号中转义了不同类型的引号字符 在单引号中,单引号需要转义以区别于字符串的结尾,但双引号不需要 在双引号中,不需要转义单引号,但需要转义双引号 在我上面的代码中,原始代码转义字符在之前,但IRB在“之前打印它。所以IRB输出与
I身高6'2英寸
但在irb中
如果我输入这个字符串,我身高6英尺2英寸,没有输入
我身高6英尺2英寸
注意转义字符在输出中的位置
为什么转义字符的位置发生了更改?因为在
IRB
中,“我身高6英尺2英寸”。正在进行检查,这与放置“我身高6英尺2英寸”相同。
在不同类型的引号中转义了不同类型的引号字符
- 在单引号中,单引号需要转义以区别于字符串的结尾,但双引号不需要
- 在双引号中,不需要转义单引号,但需要转义双引号
在我上面的代码中,原始代码转义字符在之前,
但IRB在“
之前打印它。所以IRB输出与输出不完全相同。IRB使用的是#inspect,而不是#to#。@WayneConrad Yes。谢谢你把它指给我看。。非常有用。
puts 'I am 6\'2" tall'