Ruby中的三重单引号与三重双引号
为什么你可以使用'''
代替"""
,如学习Ruby艰难的方式,第10章学习练习 ?
Ruby中没有三重引号。
并置的两个String
文字被解析为单个String
文字。 所以,
'Hello' 'World'
是相同的
'HelloWorld'
和
'' 'Hello' ''
是相同的
'''Hello'''
是相同的
'Hello'
三重单引号与三重双引号没有特殊规则,因为没有三重引号。 规则与报价简单相同。
我假设作者混淆了Ruby和Python,因为三重引用在Ruby中不会像作者想象的那样工作。 它只是像三个单独的字符串( '' '' ''
)一样工作。
对于多行字符串,可以使用:
%q{ your text goes here } => "\n your text\n goes here\n "
或%Q{}
如果您需要内部字符串插值。
三引号'''
与单引号'
相同,因为它们不插入任何#{}
序列,转义字符(如“\ n”)等。
三重双引号(ugh) """
与双引号相同"
因为它们执行插值和转义序列。
这是在您链接的同一页面上。
三重引用的版本"""
''''
允许使用多行字符串……就像单引号'
和"
,所以我不知道为什么两者都可用。