私が書いたスクリプトは、2
ファイル内の番号で始まるすべての行をファイルから出力します1
。
質問
一致しなかった他のすべての行を出力するにはどうすればよいですか?
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
my @res;
open(FILE, '<', "1") or die $!;
while (defined (my $line = <FILE>)) {
chomp $line;
push @res, $line;
}
close FILE;
open(FILE, '<', "2") or die $!;
while (defined (my $line = <FILE>)) {
chomp $line;
$line =~ m/(\d+)/;
if (defined $1) {
foreach my $a (@res) {
if ($a == $1) {
print $line . "\n";
}
}
}
}
close FILE;
ファイル 1
155
156
157
158
159
160
ファイル 2
150 a
151 f
152 r
153 a
154 a
155 a
156 a
157 f
158 f
159 f