Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

print ip address from string using regex

by flyganji (Initiate)
on Oct 04, 2011 at 15:04 UTC ( #929566=perlquestion: print w/replies, xml ) Need Help??
flyganji has asked for the wisdom of the Perl Monks concerning the following question:

Hi all, First time writing perl question here. Thank you all for help. I have an assignment to write a few lines of code that would match an IP address from $string and store it in a variable called $ip. $string = "My IP is" and the result should be $ip = "" My trial code was

#!/usr/bin/perl $string = "My IP is"; if($string =~/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/{ $ip = $string; } print "$ip\n";

I know this will print out "My IP is" but I can't seem to make find a solution to print just IP = thank you all again for any solution.

Replies are listed 'Best First'.
Re: print ip address from string using regex
by roboticus (Chancellor) on Oct 04, 2011 at 15:28 UTC


    You need to use a group in your regex to capture the match value, as described in perldoc perlre. For example:

    use strict; use warnings; my $string='foo bar baz bow'; if ($string =~ /bar(.*)bow/) { print "between bar and bow is '$1'\n"; }

    gives me:

    $ perl between bar and bow is ' baz '


    When your only tool is a hammer, all problems look like your thumb.

    Update: Added quotes in print statement to show that the whitespace is also captured.

      Thank you all for help.

Re: print ip address from string using regex
by AR (Friar) on Oct 04, 2011 at 15:23 UTC
      i wanna print ip address class also pls tel me the code like is class a is class b like that

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://929566]
Approved by Perlbotics
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (5)
As of 2017-07-24 05:45 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (348 votes). Check out past polls.