Loose-Info.com
Last Update 2008/05/18
TOP - Perl - 関数 - chomp

引数に指定した文字列の最後の文字が、$/に設定されている文字であった場合、削除します。
$/が指定されていない場合は\nを削除します。

戻り値1 = chomp 変数1

戻り値1
削除した文字数
変数1
削除処理の対象となる文字列を格納した変数
省略した場合は$_の値が対象となる

戻り値1 = chomp リスト値1

戻り値1
削除した文字数
リスト値1
削除処理の対象となる文字列を格納した変数からなるリスト値

(例)
$/ = "\n"; # 改行文字を指定 $a = "test\n"; print "テスト対象文字列 → $a\n"; $c = chomp($a); print "テスト結果 → $a\n"; print "削除した文字数 → $c\n"; print "------------------------------\n"; $a = "test\n"; $b = "改行\n"; print "テスト対象文字列 → $a$b\n"; $c = chomp($a,$b); # リスト値として2つの変数を指定 print "テスト結果 → $a$b\n"; print "削除した文字数 → $c\n"; print "------------------------------\n"; $a = "test\n\n"; # 改行文字が2つ連続 print "テスト対象文字列 → $a\n"; $c = chomp($a); print "テスト結果 → $a\n"; print "削除した文字数 → $c\n"; print "------------------------------\n"; $/ = ""; # $/を空にする $a = "test\n\n"; # 改行文字が2つ連続 print "テスト対象文字列 → $a\n"; $c = chomp($a); print "テスト結果 → $a\n"; print "削除した文字数 → $c\n"; print "------------------------------\n"; $_ = "test\n"; # $_に値を設定 print "テスト対象文字列 → $_\n"; $c = chomp(); print "テスト結果 → $_\n"; print "削除した文字数 → $c\n";

実行結果
テスト対象文字列 → test テスト結果 → test 削除した文字数 → 1 ------------------------------ テスト対象文字列 → test 改行 テスト結果 → test改行 削除した文字数 → 2 ------------------------------ テスト対象文字列 → test テスト結果 → test 削除した文字数 → 1 ------------------------------ テスト対象文字列 → test テスト結果 → test 削除した文字数 → 2 ------------------------------ テスト対象文字列 → test テスト結果 → test 削除した文字数 → 1