Validation Patterns in JavaScript
From the JavaScript Regular Expressions cheat sheet · Common Patterns · verified Jul 2026
Validation Patterns
Common validation regular expressions
javascript
// Email (basic)
/^[^\s@]+@[^\s@]+\.[^\s@]+$/
// Email (RFC-like)
/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/
// URL
/^(https?:\/\/)?([\w.-]+)\.([a-z]{2,})(\/.*)?$/i
// Phone (US)
/^\(?(\d{3})\)?[-.\s]?(\d{3})[-.\s]?(\d{4})$/
// Matches: (555) 123-4567, 555.123.4567, 555 123 4567
// Password strength
/^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/
// Min 8 chars, 1 upper, 1 lower, 1 digit, 1 special
// Credit card
/^(?:\d{4}[-\s]?){3}\d{4}$/
// Matches: 1234-5678-9012-3456 or 1234567890123456
// IPv4 address
/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/
// Date (YYYY-MM-DD)
/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/
// Time (HH:MM:SS)
/^([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$/
// Hex color
/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i
// Username (alphanumeric + underscore)
/^[a-zA-Z0-9_]{3,16}$/💡 Email validation should be simple - use service for strict validation
⚡ Use lookaheads for password requirements
📌 Always validate on server side too
🟢 Test patterns with edge cases before using
validationpatterns