Regex for IPv4 CIDR Notation
Regex Pattern
^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([0-9]|[12][0-9]|3[0-2])$IPv4 address with CIDR subnet mask (e.g. 10.0.0.0/24)
Quick Answer
The regex pattern for ipv4 cidr notation is `^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([0-9]|[12][0-9]|3[0-2])$`. IPv4 address with CIDR subnet mask (e.g. 10.0.0.0/24). This works in JavaScript, Python, Ruby, PHP, Java, and most regex engines that support PCRE syntax.
Test Examples
| Input | Result |
|---|---|
| 10.0.0.0/24 | ✓ Matches |
| 192.168.1.0/16 | ✓ Matches |
| 172.16.0.0/12 | ✓ Matches |
| 10.0.0.0/33 | ✗ No match |
| 256.0.0.0/8 | ✗ No match |
| 10.0.0.0 | ✗ No match |
Code Examples
javascript
const regex = /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[12][0-9]|3[0-2])$/;
const isValid = regex.test(value);python
import re
pattern = r'^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([0-9]|[12][0-9]|3[0-2])$'
if re.match(pattern, value):
print("valid")ruby
pattern = /^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([0-9]|[12][0-9]|3[0-2])$/
if value =~ pattern
puts "valid"
endphp
if (preg_match('/^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[12][0-9]|3[0-2])$/', $value)) {
echo "valid";
}java
String pattern = "^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\/([0-9]|[12][0-9]|3[0-2])$";
boolean isValid = value.matches(pattern);Frequently Asked Questions
Related Regex Patterns
IPv4 Address
Validates a well-formed IPv4 address (0-255 in each octet)
IPv6 Address
Basic IPv6 address (8 groups of 4 hex digits)
MAC Address
MAC address with colons or dashes as separators
Private IP Address
RFC 1918 private IPv4 address ranges (10.x, 172.16-31.x, 192.168.x)
Localhost Detection
Detects localhost URLs (localhost, 127.0.0.1, ::1)
CIDR Notation (Generic)
Generic CIDR notation for IPv4 or IPv6 with subnet mask