Code Fix

中級gsub! は置換が発生しないと nil を返す(gsub との違い) › パターン4

gsub! は置換が発生しないと nil を返す(gsub との違い)

破壊的メソッドのgsub!やsub!は、置換対象が見つかって実際に変更が起きた場合は変更後の文字列を、何も置換されなかった場合はnilを返します。

 1  note = "memo"
 2  result = note._____("x", "y")
                    ^
 3  puts result.capitalize
main.rb:3:in `<main>': undefined method `capitalize' for nil (NoMethodError)

空欄を埋めて実行を通す

広告
広告スロット(未設定)

gsub! は置換が発生しないと nil を返す(gsub との違い)

戻り値をそのまま次のメソッドにつなげると、置換が起きなかった入力でNoMethodErrorになります。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)