概要
String#chomp(rs = $/) -> String
詳細
self の末尾から rs で指定する改行コードを取り除いた文字列を生成して返す。
ただし、rs が "\n" ($/ のデフォルト値) のときは、 実行環境によらず "\r", "\r\n", "\n" のすべてを改行コードとみなして取り除きます。
rs に空文字列 ("") を指定した場合は「パラグラフモード」になり、
末尾の連続する改行コードをすべて取り除きます。
サンプルコード
hoge1 = "hoge\n" hoge2 = "hoge\r\n" hoge3 = "hoge\r" puts "chomp()" (1..3).each do |i| eval "p hoge#{i}" eval "p hoge#{i}.chomp" puts end puts "chomp('\\r')" (1..3).each do |i| eval "p hoge#{i}" eval "p hoge#{i}.chomp(\"\\r\")" puts end puts "Paragraph Mode" hoge =<<-EOS hoge hige hage huge hege EOS puts "chomp('')" p hoge p hoge.chomp("") p hoge.chomp()
出力
chomp() "hoge\n" "hoge" "hoge\r\n" "hoge" "hoge\r" "hoge" chomp('\r') "hoge\n" "hoge\n" "hoge\r\n" "hoge\r\n" "hoge\r" "hoge" Paragraph Mode chomp('') "hoge\nhige\n\nhage\n\n\nhuge\n\n\n\n\nhege\n\n\n\n" "hoge\nhige\n\nhage\n\n\nhuge\n\n\n\n\nhege" "hoge\nhige\n\nhage\n\n\nhuge\n\n\n\n\nhege\n\n\n"