我很难使用正则表达式将外部变量插入字符串。
我的字符串看起来像:
string = "7 -"
我想将整数作为字符串插入" 7"one_answers" - - 我尝试使用插值之间的空间,例如:
variable = "15"
string = string.gsub(/(S?d+)(s)(s)(D)/, '12#{variable}34')
( s?是指数是正面还是负数的任何" - ")
输出是一个看起来像这样的字符串:
"7 #{variable} -"
,但我希望输出看起来像这样:
"7 15 -"
这是解决您问题的优雅解决方案:
s = "7 -"
v = 15
string = s.gsub(/ds/, "#{s.delete("-").strip} #{v}")
#=> "7 15 -"
使用双引号。单引号的字符串不插入。
string = "7 -"
variable = "15"
string = string.gsub(/(S?d+)(s)(s)(D)/, "\1\2#{variable}\3\4")
string # => "7 15 -"