アウトプットの部屋

エンジニアになるためのアウトプット

rubyのchompメソッドなどについて

改行コードを削除するメソッドに、chompメソッドなどがあります。

他にも似たようなメソッドがいくつかあるので紹介します。

①chompメソッド

chompメソッドは、文字列の末尾にある改行コードを削除します(\r,\n,\r\nのいずれにも対応する)。改行コードがなければ何もおこなわれません。 破壊的メソッドは、chomp!メソッドです。

p "abc\r".chomp
=>"abc"

p "abc\r\n\r\n".chomp
=>"abc"    #複数の改行コードは全て削除する(空文字を引数にして書いても同じ挙動をする)

②chopメソッド

chopメソッドは文字列の末尾を一文字削除するメソッドです。ただし"\r\n"の2文字で終わっている場合のみ、その2文字を取り除きます。破破壊的メソッドはchop!メソッドです。

p "abc".chop
=>"ab"

p "abc\r\n".chop
=>"abc"

p "abc\r".chop
=>"abc"

③stripメソッド

stripメソッドは、文字列前後のホワイトスペース(改行コード、半角スペース、タブ)をすべて削除します。文字列の前後なので、文字列と文字列の間は削除されないので注意です。破壊的メソッドはstrip!メソッドです。

p "    ab c  \n  ".strip
=>"ab c"  # 間の半角スペースは削除されない

p "   ab\nc\nw".strip
=>"ab ab\nc\nw"   #末尾はwで終わっているので削除されない