foreach $line (@DataFromBatchFile) { chomp($line); print "B |$line|\n"; #$HASHDATAFROMBATCHFILE{$counter}; if ($line =~ m/-(.*) ["]*([\)\(A-Za-z0-9,\.\*]*)\s*["]*\s*/) { print "$counter $1 $2\n"; $HASHDATAFROMBATCHFILE{$counter}{$1} = $2; } if ($line =~ m/\bEND\b/) { $counter ++; } }