Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: REGEX malfunction

by si_lence (Deacon)
on Jul 13, 2009 at 09:13 UTC ( #779505=note: print w/ replies, xml ) Need Help??


in reply to REGEX malfunction

I agree with jethro: code tags would help.

One thing I do not understand is that it looks as if you are looping through the file, but match against a constant $string.

Also you should be using

use strict; use warnings;
in your code, especially if you're just starting with perl. They do help a lot.

In your code there is one thing (if I read it right): Your variable $string starts with an opening parenthesis, but you anchor your match to start without it.
You also have additional blanks around your \s+ matches. You would require 3 blanks to match: one literal one, then one from \s+ and then another literal one. In your string you only have one.

So either change (added quotes around the $string assignment, updated m//) code to

# string to be searched my $string = '(FT CDS complement(join(18028..18116,19351..20668)))'; #search for the first line highlighted in bold if ($string =~ m/^\(FT\s+CDS\s+complement\(join\([0-9.,]+\)\)\)$/) { print 'match' } else { print 'no match' }
or get rid of the outermost pair of parenthesis.

cheers, si_lence


Comment on Re: REGEX malfunction
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://779505]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (7)
As of 2014-07-23 08:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (137 votes), past polls