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 ++; } } #### B | -libs "source*.lib" | 1 libs "source*.lib" B | -1dlu | 1 1dlu B | -2dlu | 1 2dlu B | -3dlu "(1,1,3)"| 1 3dlu (1,1,3) B | -filter ASDF| 1 filter ASDF B |END|