Mike Robeson wrote:
> 
> In article <[EMAIL PROTECTED]>, [EMAIL PROTECTED] (John W. Krahn)
> wrote:
> 
> > Mike Robeson wrote:
> > >
> > > 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
> 
> Thanks for the help!! I new it had to be simple... but I just didn't see
> it! I just need to add some more code to it but I think I can take it
> from here.

You can make that a bit more robust.  :-)

#!/usr/bin/perl
use warnings;
use strict;

my $len = 30;
while ( <DATA> ) {
    unless ( /^\s*$/ or s/^\s*>(\S+)// ) {
        my $name = $1;
        my @char = ( /[acgt]/g, ( '-' ) x $len )[ 0 .. $len - 1 ];
        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]

Reply via email to