我試圖通過一個valiable其中它的名字由副STR相匹配的內容替換子STR:gsub的ruby eval(' 1')可能嗎?
>> str = "Hello **name**"
=> "Hello **name**"
>> name = "John"
=> "John"
str.gsub(/\*\*(.*)\*\*/, eval('\1')) # => error!
在上面的代碼中的最後一行是一個語法錯誤。和:
>> str.gsub(/\*\*(.*)\*\*/, '\1')
=> "Hello name"
>> str.gsub(/\*\*(.*)\*\*/, eval("name"))
=> "Hello John"
我想要的結果是:
str.gsub(/\*\*(.*)\*\*/, eval("name")) # => "Hello John"
任何幫助將不勝感激。謝謝!
不知道我完全理解你的問題在這裏..你能否澄清。你想用「Hello John」代替「Hello ** name **」? – 2010-03-29 08:19:37