Email
ValidationExample: hello@utiloom.com
^[^\s@]+@[^\s@]+\.[^\s@]+$
Email (strict RFC 5322)
ValidationExample: user.name+tag@sub.example.com
^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$URL (http/https)
ValidationExample: https://utiloom.com/tools
https?:\/\/[\w.-]+(?:\.[\w.-]+)+(?:[/?#][^\s]*)?
URL with optional protocol
ValidationExample: www.example.com/path
(?:https?:\/\/)?(?:www\.)?[\w.-]+\.[a-zA-Z]{2,}(?:[/?#][^\s]*)?HEX color
FormatExample: #0f172a
^#?(?:[0-9a-fA-F]{3}){1,2}$HEX color (with alpha)
FormatExample: #0f172aff
^#?(?:[0-9a-fA-F]{3,4}){1,2}$RGB/RGBA
FormatExample: rgba(15, 23, 42, 0.95)
rgba?\(\s*\d{1,3}\s*,\s*\d{1,3}\s*,\s*\d{1,3}(?:\s*,\s*(?:0|1|0?\.\d+))?\s*\)HSL/HSLA
FormatExample: hsl(210, 40%, 98%)
hsla?\(\s*\d{1,3}\s*,\s*\d{1,3}%\s*,\s*\d{1,3}%(?:\s*,\s*(?:0|1|0?\.\d+))?\s*\)UUID (v1-v8)
ValidationExample: 550e8400-e29b-41d4-a716-446655440000
^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$ULID
ValidationExample: 01ARZ3NDEKTSV4RRFFQ69G5FAV
^[0-7][0-9A-HJKMNP-TV-Z]{25}$Kebab case slug
FormatExample: meeting-overlap-finder
^[a-z0-9]+(?:-[a-z0-9]+)*$
snake_case
FormatExample: user_created_at
^[a-z][a-z0-9]*(?:_[a-z0-9]+)*$
camelCase
FormatExample: getUserName
^[a-z][a-zA-Z0-9]*$
PascalCase
FormatExample: UserProfile
^[A-Z][a-zA-Z0-9]*$
ISO date (YYYY-MM-DD)
Date & TimeExample: 2026-03-09
^\d{4}-\d{2}-\d{2}$ISO 8601 datetime
Date & TimeExample: 2026-03-09T14:30:00Z
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?$Time (HH:MM:SS)
Date & TimeExample: 14:30:00
^(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d)?$
12-hour time
Date & TimeExample: 2:30 PM
^(?:0?[1-9]|1[0-2]):[0-5]\d\s*(?:AM|PM|am|pm)$
Date (MM/DD/YYYY)
Date & TimeExample: 03/09/2026
^(?:0[1-9]|1[0-2])\/(?:0[1-9]|[12]\d|3[01])\/\d{4}$Date (DD/MM/YYYY)
Date & TimeExample: 09/03/2026
^(?:0[1-9]|[12]\d|3[01])\/(?:0[1-9]|1[0-2])\/\d{4}$Unix timestamp
Date & TimeExample: 1773014400
^\d{10}(?:\d{3})?$IPv4 address
NetworkExample: 192.168.1.1
^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$IPv6 address
NetworkExample: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$MAC address
NetworkExample: 01:23:45:67:89:AB
^(?:[0-9a-fA-F]{2}[:-]){5}[0-9a-fA-F]{2}$Port number
NetworkExample: 8080
^(?:[1-9]\d{0,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$Domain name
NetworkExample: sub.example.com
^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$Phone (international)
ValidationExample: +14155552671
^\+?[1-9]\d{1,14}$Phone (US format)
ValidationExample: (415) 555-2671
^\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$Credit card (Visa)
SecurityExample: 4111111111111111
^4[0-9]{12}(?:[0-9]{3})?$Credit card (Mastercard)
SecurityExample: 5500000000000004
^5[1-5][0-9]{14}$Credit card (any major)
SecurityExample: 4111111111111111
^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|3[47][0-9]{13}|6(?:011|5[0-9]{2})[0-9]{12})$SSN (US)
SecurityExample: 123-45-6789
^(?!000|666|9\d{2})\d{3}-(?!00)\d{2}-(?!0000)\d{4}$ZIP code (US)
ValidationExample: 94102-1234
^\d{5}(?:-\d{4})?$Postal code (Canada)
ValidationExample: K1A 0B1
^[A-Za-z]\d[A-Za-z]\s?\d[A-Za-z]\d$
Postal code (UK)
ValidationExample: SW1A 1AA
^[A-Z]{1,2}\d[A-Z\d]?\s?\d[A-Z]{2}$JWT token
SecurityExample: eyJhbGci.eyJzdWIi.SflKxwRJ
^[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+$
Base64 string
FormatExample: SGVsbG8gV29ybGQ=
^[A-Za-z0-9+/]+={0,2}$MD5 hash
SecurityExample: d41d8cd98f00b204e9800998ecf8427e
^[a-fA-F0-9]{32}$SHA-256 hash
SecurityExample: e3b0c44298fc1c149afbf4c8996fb924...
^[a-fA-F0-9]{64}$HTML tag
ParsingExample: <div class="box">
<\/?[a-zA-Z][a-zA-Z0-9]*(?:\s[^>]*)?\/?>
HTML comment
ParsingExample: <!-- TODO: fix -->
<!--[\s\S]*?-->
CSS class selector
ParsingExample: .container-shell
\.[a-zA-Z_][a-zA-Z0-9_-]*
Markdown link
ParsingExample: [Utiloom](https://utiloom.com)
\[([^\]]+)\]\(([^)]+)\)
Markdown heading
ParsingExample: ## Section Title
^#{1,6}\s+.+$Markdown image
ParsingExample: 
!\[([^\]]*)\]\(([^)]+)\)
JSON key-value
ParsingExample: "name": "value"
"([^"]+)"\s*:\s*(?:"[^"]*"|\d+|true|false|null)
Semantic version
FormatExample: 2.1.50-beta.1
^\d+\.\d+\.\d+(?:-[a-zA-Z0-9.]+)?(?:\+[a-zA-Z0-9.]+)?$
Cron expression (5-field)
FormatExample: */5 * * * *
^(?:[\d*,/-]+\s){4}[\d*,/-]+$File path (Unix)
FormatExample: /usr/local/bin/node
^(?:\/[\w.-]+)+\/?$
File extension
ParsingExample: document.pdf
\.[a-zA-Z0-9]{1,10}$Image file extension
ParsingExample: photo.jpg
\.(?:jpe?g|png|gif|webp|svg|avif|bmp|ico)$
Password (strong)
SecurityExample: P@ssw0rd!
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^a-zA-Z\d]).{8,}$Username (alphanumeric)
ValidationExample: john_doe.99
^[a-zA-Z][a-zA-Z0-9._-]{2,29}$Hashtag
ParsingExample: #WebDev
#[a-zA-Z][a-zA-Z0-9_]*
Twitter/X handle
ParsingExample: @utiloom
@[a-zA-Z_][a-zA-Z0-9_]{0,14}YouTube video ID
ParsingExample: youtube.com/watch?v=dQw4w9WgXcQ
(?:youtu\.be\/|youtube\.com\/watch\?v=)([a-zA-Z0-9_-]{11})Emoji (Unicode range)
ParsingExample: Hello 😀 World
[\u{1F600}-\u{1F64F}\u{1F300}-\u{1F5FF}\u{1F680}-\u{1F6FF}\u{2600}-\u{26FF}]Whitespace only
ValidationExample: \t\n
^\s+$
Positive integer
ValidationExample: 42
^[1-9]\d*$
Decimal number
ValidationExample: -3.14
^-?\d+\.\d+$
Scientific notation
ValidationExample: 6.022e23
^-?\d+(?:\.\d+)?[eE][+-]?\d+$
Data URI
FormatExample: data:image/png;base64,iVBOR...
^data:[a-zA-Z]+\/[a-zA-Z0-9.+-]+(?:;[a-zA-Z0-9-]+=\S+)*;base64,[A-Za-z0-9+/]+=*$