use strict; use warnings; open FH,"Input_File" or die "can't open file $!\n"; open OFH,">Output_File" or die "can't open file $!\n"; while () { print OFH $1,$2,$3,"\n" if (/Id=(\d+,).*?Full=(.*?,).*?Type = (.*)$/) ; }