in reply to help on how to create a hash look up table requested.
Looks like a slightly bigger question there than has been answered so far. Consider this:
use warnings; use strict; my %codeData; my $skipping = 0; my $currCode; while (<DATA>) { if (/^HIT: (\S+)/) { $currCode = $1; $skipping = exists $codeData{$currCode}; next; } next if $skipping; $codeData{$currCode} .= $_; } print $codeData{$_} for keys %codeData; __DATA__ HIT: code2 stuff for code2 HIT: code3 stuff for code3 HIT: code1 stuff for code1 HIT: code90 stuff for code90 HIT: code2 extra stuff for code2 - ignore this HIT: code34 stuff for code34 HIT: code90 and extra stuff for code90 - ignore this
Prints:
stuff for code90 stuff for code3 stuff for code2 stuff for code34 stuff for code1
Note in particular the use of exists to see if there is an element in the hash already. That frees you to store interesting stuff there rather than an explicit "found it" flag.
|
|---|