セットプチフォッカ

勉強したアウトプット、ときどきフォッカチオ作っていました

文字列に数値が含まれているか判定する

Rubyである文字列wordに数値が含まれているかどうかをBoolean値で判定するには次のようにする

 def self.include_number?(word) 
   (word =~ /[0-9]/) != nil
 end

docs.ruby-lang.org

String#=~は、正規表現を引数にとり、マッチすればそのインデックスを、そうでなければnilを返す。

このメソッドでは、nilと比較することで、

  • 見つからない場合はnil != nilfalseを返す
  • 見つかった場合は3 != nilのようになり、trueを返す

という仕組み。