Rubyで正規表現にマッチしているかどうかを
puts 'マッチした' if /ab/ =~ 'abc'
というふうに書いていたら、先輩プログラマーのリファクタリングにより
puts 'マッチした' if /ab/ === 'abc'
となった。
なにこれぇー、と思ってRegexpクラスの === メソッドを調べてみると
参照 : http://doc.ruby-lang.org/ja/1.9.2/class/Regexp.html
self === string -> bool
文字列 string との正規表現マッチを行います。 マッチした場合は真を返します。string が文字列でもシンボルでもない場合には false を返します。
ということらしい。
真偽を返してくれるということは、純粋な比較なら===を使うほうがイカしてるじゃないか!