Regex for Localhost Detection
Regex Pattern
^(?:https?:\/\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\/.*)?$Detects localhost URLs (localhost, 127.0.0.1, ::1)
Quick Answer
The regex pattern for localhost detection is `^(?:https?:\/\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\/.*)?$`. Detects localhost URLs (localhost, 127.0.0.1, ::1). This works in JavaScript, Python, Ruby, PHP, Java, and most regex engines that support PCRE syntax.
Test Examples
| Input | Result |
|---|---|
| http://localhost:3000 | ✓ Matches |
| https://127.0.0.1 | ✓ Matches |
| localhost:8080/api | ✓ Matches |
| http://example.com | ✗ No match |
| 192.168.1.1 | ✗ No match |
| http://local.host | ✗ No match |
Code Examples
javascript
const regex = /^(?:https?:\\/\\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\\/.*)?$/; const isValid = regex.test(value);
python
import re
pattern = r'^(?:https?:\/\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\/.*)?$'
if re.match(pattern, value):
print("valid")ruby
pattern = /^(?:https?:\/\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\/.*)?$/ if value =~ pattern puts "valid" end
php
if (preg_match('/^(?:https?:\\/\\/)?(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?(?:\\/.*)?$/', $value)) {
echo "valid";
}java
String pattern = "^(?:https?:\\/\\/)?(?:localhost|127\\.0\\.0\\.1|\\[::1\\])(?::\\d+)?(?:\\/.*)?$"; 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
IPv4 CIDR Notation
IPv4 address with CIDR subnet mask (e.g. 10.0.0.0/24)
Private IP Address
RFC 1918 private IPv4 address ranges (10.x, 172.16-31.x, 192.168.x)
CIDR Notation (Generic)
Generic CIDR notation for IPv4 or IPv6 with subnet mask