操作#{ }
似乎是如此根本,以至于我的Ruby书完全忽略了它的定义。有人可以提供解释吗?
答案 0 :(得分:35)
除非您知道正确的搜索字词,否则这对谷歌来说是一个棘手的问题。 #{}
运算符在字符串文字中从技术上执行表达式替换。
#{}
文字是用于在双引号字符串内插值的运算符,与在Bash中使用反引号或$()
结构的方式相同。从实际的角度来看,文本中的表达式被计算,然后整个#{}
表达式(包括运算符和它包含的表达式)被替换为 in situ 的结果
答案 1 :(得分:8)
它允许您将Ruby代码放在字符串中。所以:
"three plus three is #{3+3}"
输出:
“三加三是6”
它通常用于将变量值插入字符串而不必乱用字符串连接:
"Your username is #{user}"
答案 2 :(得分:5)
这是字符串插值运算符,您可以使用它将表达式插入到字符串中。 你的字符串需要嵌入“让这个神奇的工作,没有。 它比字符串连接更快更好。
var = "variable"
"this is a string with a #{var} in" => "this is a string with a variable in"