hi monks thanks in advance please let me know abt the error in the code am unable to understand as am not that regular to the scripting , am getting the following error

syntax error at Blast_parsing.pl line 32, near ") {" syntax error at Blast_parsing.pl line 88, near "}"

#!/usr/local/bin/perl #The Script will parse a NCBI Blastx output file and output the top N +hits of each blast result. #For each hit following results are reported #Accessionnumber, Length, Description, Evalue, Bitscore, Queryframe, Q +ueryStart, QueryEnd, Hit end, positives & identicals #The results are delimited & ready for import into a spread sheet prog +ram for browsing & further analysis. #use strict; use warnings; use Bio::SearchIO; #Usage information die "Usage:$0<BLAST-report-file> <number-of-top-hits> <output-file> \n +", if (@ARGV != 3); my ($infile,$numHits,$outfile) = @ARGV; print "Parsing the blast resut......."; my $in = Bio::SearchIO -> new(-format => 'blast', -file => $infile); open (OUT, ">$outfile" ) or die "Cannot open $outfile :$!" #print the header info for tab delimited columns #print OUT "query_name\tquery_length\taccession_number\tlength\tdescri +ption\tE Value\tbit score\tframe\tquery_start\t"; #print OUT "query_end\thit_start\thit_end\tpositives\tidentical\n"; #extraction of information for each result recursively while (my $result = $in => next_result ) { print OUT $result-> query_name . "\t"; #the length of the query sequence print OUT $result -> query_length; #output "no hits found" if there is no hits if ($result -> num_hits == 0) { print OUT "\tNo hits found\n"; } else { my $count = 0; #process each hits recursively while (my $hit = $result-> next_hit) { print OUT "\t" if ($count > 0); #get the accession numbers of the hits print OUT "\t" . $hit -> accession . "\t"; #get the lengths of the hit sequences print OUT $hit -> length . "\t"; #get the description of the hit sequences print OUT $hit -> description . "\t"; #get the E value of the hit print OUT $hit -> significance . "\t"; #get the bit score of the hit print OUT $hits -> bits . "\t"; my $hspcount = 0; # process the top HSP for the top hit while (my $hsp = $hit -> next_hsp) { print OUT "\t\t\t\t\t\t\t", if ($hspcount > 0); #get the frame of the query sequence print OUT $hsp -> frame . "\t"; #get the start and the end of the query sequen +ce in the alignment print OUT $hsp -> start ('query') . "\t" . $hsp - +> end ('query') . "\t"; #get the start and end of the hit sequence in +the alignment print OUT $hsp -> start ('hit') . "\t" . $hsp -> +end ('hit') . "\t"; # get the similarity value print OUT "%.lf" , ($hsp -> frac_conserved * 100); print OUT "%\t"; # get the identity value print OUT "%.lf" , ($hsp -> frac_identity * 100); print OUT "%\n" ; $hspcount++; } $count++; #flow control for the number of hits needed last if ($count == $numHits ); } } } close OUT ; print "DONE !!! \n";

In reply to Syntax error in loop by MVRS

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.