G'day lairel,

"I keep getting errors about uninitialized variables and needing explicit declaration."

Those error messages should tell you the variable involved and other information: use this to track down your problem. If you need help with any particular error message(s), you'll need to show us the text also.

"I have tried so many things that I am lost and confused ..."

You need to understand fundamental constructs, such as while loops. I suggest you read "perlintro -- a brief introduction and overview of Perl".

Consider this technique for accessing fasta files for this type of work:

#!/usr/bin/env perl use strict; use warnings; { local $/ = "\n>"; while (<DATA>) { $_ = substr $_, 1 if $. == 1; my ($head, $data) = split /\n/; if ($head eq $ARGV[0]) { print "Found! Head: '$head'; Data: '$data'\n"; last; } } } __DATA__ >head1 data1 >head2 data2 >head3 data3

Some test runs:

$ pm_1159403_fasta.pl head1 Found! Head: 'head1'; Data: 'data1' $ pm_1159403_fasta.pl head2 Found! Head: 'head2'; Data: 'data2' $ pm_1159403_fasta.pl head3 Found! Head: 'head3'; Data: 'data3'

See also: $/ - input record separator; $. - input line number.

— Ken


In reply to Re: While loop with nested if statements by kcott
in thread While loop with nested if statements by lairel

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.