Regex for Strict URL Slug
Regex Pattern
^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$Strict slug: starts with letter, lowercase alphanumeric with dashes
Quick Answer
The regex pattern for strict url slug is `^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$`. Strict slug: starts with letter, lowercase alphanumeric with dashes. This works in JavaScript, Python, Ruby, PHP, Java, and most regex engines that support PCRE syntax.
Test Examples
| Input | Result |
|---|---|
| hello-world | ✓ Matches |
| my-blog-post | ✓ Matches |
| article1 | ✓ Matches |
| -leading | ✗ No match |
| 123-start | ✗ No match |
| UPPER | ✗ No match |
| trailing- | ✗ No match |
Code Examples
javascript
const regex = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/; const isValid = regex.test(value);
python
import re
pattern = r'^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$'
if re.match(pattern, value):
print("valid")ruby
pattern = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/ if value =~ pattern puts "valid" end
php
if (preg_match('/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/', $value)) {
echo "valid";
}java
String pattern = "^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"; boolean isValid = value.matches(pattern);
Frequently Asked Questions
Related Regex Patterns
UUID v4
UUID version 4 (randomly generated)
UUID (Any Version)
Any RFC 4122 UUID (versions 1-5)
JWT Token
JSON Web Token (header.payload.signature)
Hex String
Any-length hexadecimal string
Base64 String
Standard base64 encoded string
Alphanumeric Username
Username with letters, digits, underscores (3-16 chars)