Ruby  特定の文字列を検知するプログラム check_nameメソッド

check_nameメソッド

入力された名前に「.」や空白が含まれていないかを登録前に確認するメソッドです。

def check_name(str) 
  if str.include?(".")
    puts "!エラー!記号は登録できません"
  elsif str.include?(" ")
    puts "!エラー!空白は登録できません"
  else
    puts "登録が完了しました"
  end
end
puts "登録したい名前を入力してください(例)YamadaTaro"
str = gets
check_name(str) 

 

include?メソッドとは、指定した値が配列や文字内に含まれているかを判定するメソッドです。含まれていればtrue、含まれていなければfalseを返します。

 

まずはcheck_nameメソッドを定義します。

ここで仮引数をstrとし、空白があれば"!エラー!空白は登録できません"、ピリオドがあれば"!エラー!空白は登録できません"と表示されるようif文を使って記述します。

構文内では上から順に処理されるため、登録完了の表示は最後に記述します。

 

check_nameメソッドを定義したら、名前を入力するため"登録したい名前を入力してください(例)YamadaTaro"と表示させ、getsメソッドで入力された

文字列を取得します。

最後にcheck_nameメソッドを呼び出して完成です。