. . . my $firsttime = 1; while(){ if(/Final graph set matrix/ .. /PLUTO4 finished/){ if($firstime--){ print "\nnew data set\n"; } my @gset_match = ($string =~ ([A-Z]\s\d+,\s\d+\(\s*\d+\))/g); foreach $_(@gset_match) { print TEXT "$_\n"; } } } . . .