Ruby字符串单引号和双引号的区别
1个回答
展开全部
??? Ruby的字符串对象生成有两种方式,字符串文字值加单引号或加双引号。
?
??? 两种方式主要区别在于构造文字量时,对字符串的处理次数不同。
?
??? 单引号时,Ruby对字符串值不做处理,里边是什么就是什么。
?
??? 双引号时,Ruby首先要查找文本中要替换的字符,即带反斜杠的字符,用二进制替换。最常见的就是\n;其次,这种方式下可以插入表达式#{...},那就要处理表达式,将其替换成具体的值。
一实例即可说明问题
@title="test"
p '<title>#{@title}</title>'
#原样输出
# => "<title>\#{@title}</title>"
p "<title>#{@title}</title>"
#计算出变量的值,再变成字符串输出
# => "<title>test</title>"
#内容亦可以进行字符串运算
p "<title>#{"this is "+@title}</title>"
# => "<title>this is test</title>"
?
??? 两种方式主要区别在于构造文字量时,对字符串的处理次数不同。
?
??? 单引号时,Ruby对字符串值不做处理,里边是什么就是什么。
?
??? 双引号时,Ruby首先要查找文本中要替换的字符,即带反斜杠的字符,用二进制替换。最常见的就是\n;其次,这种方式下可以插入表达式#{...},那就要处理表达式,将其替换成具体的值。
一实例即可说明问题
@title="test"
p '<title>#{@title}</title>'
#原样输出
# => "<title>\#{@title}</title>"
p "<title>#{@title}</title>"
#计算出变量的值,再变成字符串输出
# => "<title>test</title>"
#内容亦可以进行字符串运算
p "<title>#{"this is "+@title}</title>"
# => "<title>this is test</title>"
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询