1

したがって、この文字列から:

str = 'Hello #{name}, you are now #{age}.'

手に入れたい

"Hello <%= name %>, you are now <%= age =>"

私はこれを試しました:

str.gsub(/\#{*}/, "<%= \1 %>")

しかし、私はそれがうまくいきません。

4

1 に答える 1

4

グループをキャプチャするには、その部分を括弧で囲む必要があります。

str = 'Hello #{name}, you are now #{age}.'
str.gsub(/#\{(.*?)\}/, '<%= \1 %>')
# => "Hello <%= name %>, you are now <%= age %>."

そして、あなたは逃げなければなりません、、{}はありません#。( {}正規表現では特別な意味がありますが、そうではあり#ません)。

于 2013-09-03T08:01:45.550 に答える