2009-11-23
■ [正規表現] キャプチャなしの括弧: (?:…)

(?: )
後方参照を伴わないグループ化。つまり、\1, \2 (あるいは、 $1, $2)などの対象にはならず、 単純なグループ化の用途で使用します。
正規表現
後方参照できない場合はnilが返る。
puts "/^([-+]?[0-9]+(\.[0-9]*)?)([CF])$/ =~ '12.34F': #{/^([-+]?[0-9]+(\.[0-9]*)\ ?)([CF])$/ =~ '12.34F'}: #{$1}#{$2}#{$3}" puts "/^([-+]?[0-9]+(?:\.[0-9]*)?)([CF])$/ =~ '12.34F': #{/^([-+]?[0-9]+(?:\.[0-\ 9]*)?)([CF])$/ =~ '12.34F'}: #{$1}#{$2}#{$3}"
/^([-+]?[0-9]+(.[0-9]*)?)([CF])$/ =~ '12.34F': 0: 12.34.34F /^([-+]?[0-9]+(?:.[0-9]*)?)([CF])$/ =~ '12.34F': 0: 12.34F
コメントを書く