Mike Robeson wrote: > > In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] (John W. Krahn) > wrote: > > > > According to your data this should work: > > > > #!/usr/bin/perl > > use warnings; > > use strict; > > > > my $len = 30; # pad out to this length > > while ( <DATA> ) { > > unless ( s/^\s*>// ) { > > chomp; > > my @char = ( split( // ), ( '-' ) x ( $len - length ) ); > > $_ = "@char\n"; > > } > > print; > > } > > > > __DATA__ > > >dog > > agatagatcgcatcga > > >cat > > acgcttcgatacgctagctta > > >mouse > > agatatacgggt > > I do not know what happend but the text didn't get formatted correctly > on the list. But this is how the out put should really have been: > > a g a t a g a t c g c a t c g a - - - - - - dog > a c g c t t c g a t a c g c t a g c t t a - cat > a g a t a t a c g g g t t - - - - - - - - - mouse > > That is, I want the edited sequence data and the name on the same line.
#!/usr/bin/perl use warnings; use strict; my $len = 30; my $name; while ( <DATA> ) { chomp; unless ( s/^\s*>(.+)// ) { $name = $1; my @char = ( split( // ), ( '-' ) x ( $len - length ) ); print "@char $name\n"; } } __DATA__ >dog agatagatcgcatcga >cat acgcttcgatacgctagctta >mouse agatatacgggt John -- use Perl; program fulfillment -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]