名前付きキャプチャ
?<name>pattern) または (?'name'pattern) と書くことで名前をつけられる
キャプチャした文字列は MatchData#[] に Symbol を渡すことで参照できる
code:sample.rb
m = /\$(?<dollars>\d+)\.(?<cents>\d+)/.match("$3.67")
=~の左辺の正規表現リテラル内で使うと、キャプチャの名前 (name) のローカル変数にキャプチャした文字列が代入される
code:sample.rb
/\$(?<dollars>\d+)\.(?<cents>\d+)/ =~ "$3.67" # => 0
dollars # => "3"
cents # => "67"
関連URL