Repost from Perlmonksの場合:Perlのsplitコマンドと空白のトリミングを組み合わせるにはどうすればいいですか?
電子メールの長いリストをセミコロンで区切るためのperlスクリプトを作成しました。私がコードとしたいのは、分割を空白のトリミングと組み合わせるので、2つの配列は必要ありません。最初の配列を読み込んでいる間にトリミングする場所がありますか?出力はソートされた名前のリストです。おかげさまで
#!/pw/prod/svr4/bin/perl
use warnings;
use strict;
my $file_data =
'Builder, Bob ;Stein, Franklin MSW; Boop, Elizabeth PHD Cc: Bear,
+ Izzy';
my @email_list;
$file_data =~ s/CC:/;/ig;
$file_data =~ s/PHD//ig;
$file_data =~ s/MSW//ig;
my @tmp_data = split(/;/, $file_data);
foreach my $entry (@tmp_data) {
$entry =~ s/^[ \t]+|[ \t]+$//g;
push(@email_list, $entry);
}
foreach my $name (sort(@email_list)) {
print "$name \n";
}
split/\ s *; \ s */$ file_data –
あなたはunpack()も使うことができると思いますが、それなしであなたにソリューションを提供してください。 – Makis