Matching a Valid IP Address : Regular Expressions « String « PHP






Matching a Valid IP Address

 
<?php 

$good_ip = "192.168.0.1"; 

$bad_ip = "1.334.10.10"; 

$regex = "^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}.([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" ;

if (ereg($regex, $good_ip)) { 
    echo "'" . $good_ip . "' is a valid ip address.\n"; 
} else { 
    echo "'" . $good_ip . "' is an INVALID ip address.\n"; 
} 

if (ereg($regex, $bad_ip)) { 
    echo "'" . $bad_ip . "' is a valid ip address.\n"; 
} else {
    echo "'" . $bad_ip . "' is a INVALID ip address.\n"; 
} 
?>
  
  








Related examples in the same category

1.Brackets [] finds a range of characters.
2.Character Classes
3.Complete list of regular expression examples
4.\b and \B, equate to "On a word boundary" and "Not on a word boundary," respectively.
5.^ and $ are line anchors.
6.Line Anchors
7.Match URL
8.Match an IP address
9.Match the smallest number of characters starting with "p" and ending with "t"
10.Matching GUIDs/UUIDs
11.Matching a Valid E-mail Address
12.Matching using backreferences
13.Matching with Greedy vs. Nongreedy Expressions
14.Matching with character classes and anchors
15.Matching with |
16.Define a pattern and use parentheses to match individual elements within it
17.Greedy Qualifiers
18.Greedy and non-greedy matching
19.Greedy versus nongreedy matching
20.Grouping captured subpatterns
21.Validating Pascal Case Names
22.Validating U.S. Currency
23.Validating a credit card number
24.Nongreedy Qualifiers
25.POSIX Regular Expressions Character Classes
26.POSIX Regular Expressions Character Classes
27.Ranges
28.Option patterns:
29.Predefined Character Ranges (Character Classes)
30.Pattern matches:
31.Pattern match extenders:
32.Perl-Compatible Regular Expressions (PCRE)
33.Qualifiers restrict the number of times the preceding expression may appear.
34.Quantifiers for Matching a Recurring Character
35.Quantifiers: +, *, ?, {int. range}, and $ follow a character sequence:
36.Special classes for regular expression
37.Regular expressions using character classes