Ruby (on Rails) の正規表現に問題があります。私はこれに比較的慣れていません。
テスト文字列は http://www.xyz.com/017010830343 ?$ProdLarge$ です。
「$ProdLarge$」を削除しようとしています。つまり、$ 記号とその間のすべての記号です。
私の正規表現は次のとおりです: \$\w+\$
Rubular は、私の表情は大丈夫だと言っています。http://rubular.com/r/NDDQxKVraK
しかし、コードを実行すると、一致するものが見つからないとアプリに表示されます。以下のコード:
some_array.each do |x|
logger.debug "scan #{x.scan('\$\w+\$')}"
logger.debug "String? #{x.instance_of?(String)}"
x.gsub!('\$\w+\$','scl=1')
...
ロガーのデバッグ行に「[]」の結果が表示されます。文字列が真であることが確認されました。そして、gsub ラインは効果がありません。
何を修正する必要がありますか?