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


Copyright(C) 2006-2011 CLAYPOT. All Rights Reserved.