Menu
CoddyTech

chomp メソッド

CoddyのRubyジャーニー「基礎」セクションの一部。レッスン 30/88。

前のレッスンでは、ユーザーがEnterキーを押すと、getsに改行文字が含まれることを学びました。chompメソッドは、文字列の末尾にあるこの改行を削除します。

name = gets.chomp
puts "Hello, #{name}!"

ユーザーが「Alice」と入力すると、出力はきれいになります。

Hello, Alice!

chompを使わないと、感嘆符が次の行に単独で表示されてしまいます。上で示したように、chompはgetsに直接つなげて呼び出せます。これはRubyのプログラムで最もよく見かけるパターンです。

pを使って違いを確認しましょう。

with_newline = gets
without_newline = gets.chomp

p with_newline      # "Ruby\n"
p without_newline   # "Ruby"

chompメソッドは末尾の改行のみを削除します。文字列内のほかの文字には影響しません。これからは、ユーザー入力を読み取るときは通常、gets.chompを使うとよいでしょう。

challenge icon

チャレンジ

簡単

gets.chompを使ってユーザーから都市名を読み取り、cityという変数に格納します。

次に、putsと文字列補間を使って、次の形式で歓迎メッセージを出力します。

Welcome to [city]!

たとえば、入力がTokyoの場合、出力は次のようになります。

Welcome to Tokyo!

感嘆符は都市名の直後に置き、余分なスペースや空行を入れないでください。

自分で試してみよう

# ユーザーから都市名を読み取る
city = gets.chomp

# TODO: 文字列補間を使って歓迎メッセージを出力するコードを以下に書く
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Rubyオンラインコンパイラ