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

Continue with JavaScript Regular Expressions

Save the full cheat sheet or work through every related task.

More JavaScript tasks

Back to the full JavaScript Regular Expressions cheat sheet