各行の最後の要素を取得する必要があります。私はあなたが.
で区切られた最後の値を意味する最後の要素によって想定しperl
..perlで各行の最後の要素を取得するにはどうすればよいですか?
1.25.56.524.2
2.56.25.254.3
2.54.28.264.2
各行の最後の要素を取得する必要があります。私はあなたが.
で区切られた最後の値を意味する最後の要素によって想定しperl
..perlで各行の最後の要素を取得するにはどうすればよいですか?
1.25.56.524.2
2.56.25.254.3
2.54.28.264.2
を使用しています。このコードを見て:
use strict;
my @last_values; # UPDATE: initialize array
for my $line (<DATA>) { # read line by line
chomp $line; # remove newline at the end
my @fields = split '\.', $line; # split to fields
my $last = pop @fields; # get last field
print $last."\n";
push @last_values, $last; # UPDATE: store last field in array
}
__DATA__
1.25.56.524.2
2.56.25.254.3
2.54.28.264.2
出力:
2
3
2
一つの可能性は次のようになります。
use strict;
use warnings;
my @Result; # Array holding the results
while (<DATA>) # whatever you use to provide the lines...
{
chomp; # good practice, usually necessary for STDIN
my @Tokens = split(/\./); # assuming that "." is the separator
push(@Result , $Tokens[-1]);
}
__DATA__
1.25.56.524.2
2.56.25.254.3
2.54.28.264.2
だけsplitドットの各行は、最後の要素は、インデックスを持つ-1 :
print +(split /\./)[-1] while <>;
Welcome to StackO流血!あなたはあなたがまだ試したことを投稿できますか? [最小限の完全で検証可能な例]を提供してください(http://stackoverflow.com/help/mcve)。 – FelixSFD