Herokuで実行されているRailsを使用して、文字列で正規表現の一致が見つかったが、括弧内のグループに$1変数が設定されていないという状況に遭遇しました。これは、Herokuでの本番セットアップでのみ発生し、ローカルシステムでは発生しません(Rubyruby-1.9.2-p0を使用したRails3.0.7)。コードは
puts "**** gateway_reply=#{gateway_reply}"
match = gateway_reply =~ /ID: (\w+)/
msg_id = $1
puts "**** match=#{match}, msg_id ($1) = #{$1}"
私のローカルシステムでは、出力は
**** gateway_reply=ID: da2x7s5tjumtxtnk1krl8wps4wpasiee
**** match=0, msg_id ($1) = da2x7s5tjumtxtnk1krl8wps4wpasiee
本番システムでは、$1は設定されていません。
**** gateway_reply=ID: 93e4ca3590207761af6f3b5ba3545b36
**** match=0, msg_id ($1) =
ここで何が起こっているのかについて何か答えはありますか?