my %ids; while (my $line = ) { chomp $line; my (undef, $id) = split /\|/, $line; $ids{$id} = 1; } while (my $line = ) { my ($id, $rest) = split /;/, $line, 2; if ($ids{$id}) { print "Found id '$id' in line $line"; } }