my %userData; open(inData, $data); while () { chomp; $line = $_; if ($line =~/^GC/){ my $ACTNUM = substr $line, 11, 9 ; my $ref = substr $line, 0, 3 ; $userData{$ACTNUM}{$ref} = $line; } } for my $ACTNUM (sort keys %userData) { $line = $userData{$ACTNUM}{GCA}; $ACCTNUM = substr $line, 11, 9; $FIRM_ID = substr $line, 660, 1; $CURR = substr $line, 661, 3; print "$CURR,$ACCTNUM,$FIRM_ID\n"; }