Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: More complicated regular expression?

by jaldama (Acolyte)
on Jan 26, 2012 at 15:29 UTC ( #950125=note: print w/ replies, xml ) Need Help??


in reply to Re: More complicated regular expression?
in thread More complicated regular expression?

I'm trying

if ($found_addr =~ m/address(.*)\d/){ print "$1\n"; }
But it's cutting off the last digit of the address for some reason.


Comment on Re^2: More complicated regular expression?
Download Code
Re^3: More complicated regular expression?
by VinsWorldcom (Priest) on Jan 26, 2012 at 15:35 UTC

    And I bet you're getting a space in front of the 74. Your "\d" at the end is matching a single digit character and since it's at the end of your parenthesis grabbing match, it's taking the last character - excluding it from your match.

    Use JavaFan's regex above and all will be well.

      You're right, and JavaFan's code worked perfect. Thanks a lot
Re^3: More complicated regular expression?
by Anonymous Monk on Jan 26, 2012 at 15:40 UTC
    use YAPE::Regex::Explain; print YAPE::Regex::Explain->new( qr/address(.*)\d/ )->explain; __END__ The regular expression: (?-imsx:address(.*)\d) matches as follows: NODE EXPLANATION ---------------------------------------------------------------------- (?-imsx: group, but do not capture (case-sensitive) (with ^ and $ matching normally) (with . not matching \n) (matching whitespace and # normally): ---------------------------------------------------------------------- address 'address' ---------------------------------------------------------------------- ( group and capture to \1: ---------------------------------------------------------------------- .* any character except \n (0 or more times (matching the most amount possible)) ---------------------------------------------------------------------- ) end of \1 ---------------------------------------------------------------------- \d digits (0-9) ---------------------------------------------------------------------- ) end of grouping ----------------------------------------------------------------------

    So .* (matching the most amount possible) followed by \d, a digit. If you want the digit to be captured, move it inside the parens.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2014-11-26 09:12 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (165 votes), past polls