初学者Ruby问题-字符串文本中的${…}符号做什么?

初学者Ruby问题-字符串文本中的${…}符号做什么?,ruby,Ruby,我正在阅读一些Ruby代码,但我不理解这段代码: thing = '${other-thing}/etc/' 它似乎用一个值替换了${other thing},并用它来构建字符串,但我自己还没能重新创建它 编辑:很抱歉,原来Maven(Java构建工具)正在进行一些预处理。这个被接受的答案展示了如何在纯Ruby中进行替换 $ irb irb(main):001:0> a = "Hello" => "Hello" irb(main):002:0> b = "world" =

我正在阅读一些Ruby代码,但我不理解这段代码:

thing = '${other-thing}/etc/'
它似乎用一个值替换了
${other thing}
,并用它来构建字符串,但我自己还没能重新创建它

编辑:很抱歉,原来Maven(Java构建工具)正在进行一些预处理。这个被接受的答案展示了如何在纯Ruby中进行替换

$ irb
irb(main):001:0> a = "Hello"  
=> "Hello"
irb(main):002:0> b = "world"
=> "world"
irb(main):003:0> puts "${a}, ${b}!"    # Doesn't work.
${a}, ${b}!
=> nil
irb(main):004:0> puts "#{a}, #{b}!"    # Works fine.
Hello, world!
=> nil
irb(main):005:0> puts '#{a}, #{b}!'    # Doesn't work.
#{a}, #{b}!
=> nil
你想要的是
{…}
,我想不是
${…}
。此外,在单引号的字符串中没有替换,只有双引号(或等价物——Ruby中有几十种分隔字符串的方法)


你想要的是
{…}
,我想不是
${…}
。此外,在单引号的字符串中没有替换,只有双引号(或等价物——Ruby中有几十种分隔字符串的方法)。

它肯定是${…}。可能有人在代码中的某个地方添加了该行为?可能这很愚蠢,但它不是某种环境变量吗?它肯定是${…}。可能有人在代码中的某个地方添加了行为?可能很愚蠢,但它不是某种环境变量吗?您在哪里看到此代码?您在哪里看到此代码?