#! perl -sw use strict; my %comments = ( FED00123 => 'Comment FED00123', FED00124 => 'Comment FED00124', ); $/ = 'UNIX'; ## Read the bulk as a block while( ) { my( $id ) = m[(FED.....)]; print; { local $/ = "\n"; print scalar ; } ## tidy up print "\n$comments{ $id }\n"; } __DATA__ ... #### C:\test>junk48 =====EDO=FED00123===== XXXXX XXXXX XXXXX XXXXX XXXXX UNIX Page: XX Comment FED00123 =====EDO=FED00124===== XXXXX XXXXX XXXXX XXXXX XXXXX XXXXX UNIX Page: XX Comment FED00124