Rubyである文字列wordに数値が含まれているかどうかをBoolean値で判定するには次のようにする
def self.include_number?(word)
(word =~ /[0-9]/) != nil
end
docs.ruby-lang.org
String#=~
は、正規表現を引数にとり、マッチすればそのインデックスを、そうでなければnil
を返す。
このメソッドでは、nil
と比較することで、
- 見つからない場合は
nil != nil
はfalse
を返す
- 見つかった場合は
3 != nil
のようになり、true
を返す
という仕組み。