Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^2: How to get the correct count

by eyepopslikeamosquito (Chancellor)
on Apr 19, 2012 at 11:48 UTC ( #965928=note: print w/replies, xml ) Need Help??

in reply to Re: How to get the correct count
in thread How to get the correct count

I endorse all the excellent improvements made by GrandFather. Some further minor tweaks follow. For removing whitespace, you could change from:

$seq =~ s/\s//g;
$seq =~ s/\s+//g;
That should be a touch more efficient and is more idiomatic -- see also perlfaq4 "How do I strip blank space from the beginning/end of a string?".

An alternative for counting the number of bases is to change from:

my $A = () = $seq =~ /A/ig;
my $A = $seq =~ tr/aA//;
Counting characters with tr seems a bit odd but is normally fastest and is idiomatic Perl -- see Quote and Quote-like Operators.

Finally, to see what actually matches in the regex, and so help you debug it, note that you could expand it a bit like this:

my @matches = $seq =~ /[AG]TG.*?T[AG][AG]/ig; print "Here are the matched parts of the string:\n"; print " '$_'\n" for @matches; my $GENE = @matches;

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://965928]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (1)
As of 2018-07-22 01:36 GMT
Find Nodes?
    Voting Booth?
    It has been suggested to rename Perl 6 in order to boost its marketing potential. Which name would you prefer?

    Results (451 votes). Check out past polls.