Files and Safe IO
Chomp Lines
chomp removes a trailing newline after a line is read into a scalar.
chomp
`chomp` removes the input record separator, usually a newline, from the end of a string.
Chomp Lines
chomp_lines.pl
Replay: real traced execution (multi-file project)
use strict;
use warnings;
my $name = "Nora";
my $content = "$name\n";
my $raw = $content;
my $clean = $raw;
chomp $clean;
my $raw_length = length $raw;
my $clean_length = length $clean;
print "name=$name\n";
print "raw_length=$raw_length\n";
print "clean_length=$clean_length\n";
use strict;
use warnings;
my $name = "Ilya";
my $content = "$name\n";
my $raw = $content;
my $clean = $raw;
chomp $clean;
my $raw_length = length $raw;
my $clean_length = length $clean;
print "name=$name\n";
print "raw_length=$raw_length\n";
print "clean_length=$clean_length\n";
use strict;
use warnings;
my $name = "Sam";
my $content = "$name\n";
my $raw = $content;
my $clean = $raw;
chomp $clean;
my $raw_length = length $raw;
my $clean_length = length $clean;
print "name=$name\n";
print "raw_length=$raw_length\n";
print "clean_length=$clean_length\n";
$name ← Nora, $content ← Nora , $raw ← Nora , $clean ← Nora , $raw_length ← 5
4my $name→ Nora = "Nora"; #@name="Ilya", "Sam"5my $content→ Nora = "$nameNora\n";6my $raw→ Nora = $contentNora ;7my $clean→ Nora = $rawNora ;8chomp $clean→ Nora;910my $raw_length→ 5 = length $rawNora ;11my $clean_length→ 4 = length $cleanNora;1213print "name=$nameNora\n";14print "raw_length=$raw_length5\n";15print "clean_length=$clean_length4\n";outputname=Nora raw_length=5 clean_length=4
$name ← Ilya, $content ← Ilya , $raw ← Ilya , $clean ← Ilya , $raw_length ← 5
4my $name→ Ilya = "Ilya";5my $content→ Ilya = "$nameIlya\n";6my $raw→ Ilya = $contentIlya ;7my $clean→ Ilya = $rawIlya ;8chomp $clean→ Ilya;910my $raw_length→ 5 = length $rawIlya ;11my $clean_length→ 4 = length $cleanIlya;1213print "name=$nameIlya\n";14print "raw_length=$raw_length5\n";15print "clean_length=$clean_length4\n";outputname=Ilya raw_length=5 clean_length=4
$name ← Sam, $content ← Sam , $raw ← Sam , $clean ← Sam , $raw_length ← 4
4my $name→ Sam = "Sam";5my $content→ Sam = "$nameSam\n";6my $raw→ Sam = $contentSam ;7my $clean→ Sam = $rawSam ;8chomp $clean→ Sam;910my $raw_length→ 4 = length $rawSam ;11my $clean_length→ 3 = length $cleanSam;1213print "name=$nameSam\n";14print "raw_length=$raw_length4\n";15print "clean_length=$clean_length3\n";outputname=Sam raw_length=4 clean_length=3