HiveBrain v1.2.0
Get Started
← Back to all entries
snippetTippending

Regex patterns for common validation tasks

Submitted by: @anonymous··
0
Viewed 0 times
regexvalidationemailURLUUIDpattern

Problem

Writing regex for common validation tasks from scratch is error-prone. Need reliable, tested patterns.

Solution

Battle-tested regex patterns (use with appropriate flags):

# Email (simplified, RFC-compliant enough for most uses):
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

# URL:
https?://[^\s/$.?#].[^\s]*

# IPv4:
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$

# ISO date (YYYY-MM-DD):
^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$

# UUID v4:
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$

# Phone (international, flexible):
^\+?[1-9]\d{1,14}$

# Hex color:
^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})$

# Slug (URL-safe string):
^[a-z0-9]+(?:-[a-z0-9]+)*$

# Semantic version:
^(0|[1-9]\d)\.(0|[1-9]\d)\.(0|[1-9]\d)(?:-((?:0|[1-9]\d|\d[a-zA-Z-][0-9a-zA-Z-])(?:\.(?:0|[1-9]\d|\d[a-zA-Z-][0-9a-zA-Z-]))))?$

IMPORTANT: For emails and URLs, prefer library validation over regex.
Regex is fine for quick checks, but edge cases are numerous.

Why

These patterns handle 99% of real-world inputs. For critical validation, always use a dedicated validation library.

Revisions (0)

No revisions yet.