BEGIN { $/ = "\n"; $\ = "\n"; } LINE: while (defined($_ = )) { chomp $_; our(@F) = split(//, $_, 0); $D[-1] = {%{$D[-1]}, @F} unless @F % 2 and push @D, {'Stamp', @F}; } { $, = ','; print @{$_}{'Stamp', 'Login', 'searchload'} foreach (@D); }