in reply to "Pattern Matching", not using regex
You could so something like (following code is untested, just shown here to guide you, not for cut-and-paste purposes):
use AnyDBM_File; use Fcntl; my $pattern_file = "whatever 1"; my $target_file = "whatever 2"; my $dbm = "/tmp/matchdbm"; tie my %db => AnyDBM_File => $dbm, O_CREAT | O_RDWR, 0666 or die "Failed to tie to $dbm: $!"; open my $pf => $pattern_file or die "Failed to open $pattern_file: $!" +; open my $tf => $target_file or die "Failed to open $target_file: $!"; + $db {$_} ++ while <$pf>; my @buff = ("", "", ""); while (<$tf>) { @buff = (@buff [1, 2], $_); print @buff if $db {$buff [1]}; } @buff = (@buff [1, 2], ""); print @buff if $db {$buff [1]};
Abigail
|
|---|