in reply to Re^2: concatenating identical sequences
in thread concatenating identical sequences
Or you could try this version first:
#! perl -slw use strict; my( $id, %accu, @order ); while( <DATA> ) { chomp; if( m[^(\S+_\S+_\S+)\s+(.+)\s*$] ) { $id = $1; unless( exists $accu{ $id } ) { push @order, $id; $accu{ $id } = $2; } else { $accu{ $id } .= ' ' . $2; } } else { my $pad = 10 - length() % 11; $accu{ $id } .= ' ' . $_ . ' ' x $pad; } } for my $key ( @order ) { printf "%-10s %s\n", $key, substr( $accu{ $key }, 0, 55, '' ); print substr( $accu{ $key }, 0, 66, '' ) while length $accu{ $key +}; print ''; }
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^4: concatenating identical sequences
by $new_guy (Acolyte) on Oct 10, 2011 at 12:14 UTC |