String & Regex Validators

String validation and regex patterns for text processing, email validation, URL checking, and format verification.

173 code snippets available

Is Empty String

string

Checks if string is empty or whitespace only.

#validation#text
ts
const isEmpty = (str: string): boolean => !str || str.trim().length === 0;

Capitalize String

string

Capitalizes first letter of string.

#format#text
ts
const capitalize = (str: string): string => str.charAt(0).toUpperCase() + str.slice(1);

Truncate String

string

Truncates string with ellipsis.

#format#text
ts
const truncate = (str: string, len: number): string => str.length > len ? str.slice(0, len) + '...' : str;

Slugify String

string

Converts string to URL-friendly slug.

#url#seo
ts
const slugify = (str: string): string => str.toLowerCase().trim().replace(/[^\w\s-]/g, '').replace(/[\s_-]+/g, '-');

Word Count

string

Counts words in a string.

#count#text
ts
const wordCount = (str: string): number => str.trim().split(/\s+/).filter(Boolean).length;

Reverse String

string

Reverses a string.

#utility#text
ts
const reverse = (str: string): string => str.split('').reverse().join('');

Is Palindrome

string

Checks if string reads same forwards and backwards.

#algorithm#text
ts
const isPalindrome = (str: string): boolean => {
  const clean = str.toLowerCase().replace(/[^a-z0-9]/g, '');
  return clean === clean.split('').reverse().join('');
};

Strong Password

string

Min 8 chars, 1 upper, 1 lower, 1 num, 1 special.

#security#auth
ts
const isValid = (s: string): boolean => /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$/.test(s);

Moderate Password

string

Min 8 chars, 1 letter, 1 number.

#security#auth
ts
const isValid = (s: string): boolean => /^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{8,}$/.test(s);

PIN (4 Digits)

string

Standard 4-digit PIN.

#auth#mobile
ts
const isValid = (s: string): boolean => /^[0-9]{4}$/.test(s);

PIN (6 Digits)

string

Standard 6-digit PIN / OTP.

#auth#mobile#otp
ts
const isValid = (s: string): boolean => /^[0-9]{6}$/.test(s);

Generic API Key

string

32+ alphanumeric characters.

#auth#token
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9]{32,}$/.test(s);

Phone (E.164 Int)

string

International format (+14155552671).

#phone#contact
ts
const isValid = (s: string): boolean => /^\+[1-9]\d{1,14}$/.test(s);

Phone (US)

string

Matches (555) 555-5555 or 555-555-5555.

#phone#us
ts
const isValid = (s: string): boolean => /^\(?([2-9][0-9]{2})\)?[-. ]?([2-9][0-9]{2})[-. ]?([0-9]{4})$/.test(s);

Phone (UK Mobile)

string

UK Mobile number format.

#phone#uk
ts
const isValid = (s: string): boolean => /^(\+44|0)7\d{9}$/.test(s);

Phone (India)

string

+91 or 10-digit mobile.

#phone#india
ts
const isValid = (s: string): boolean => /^(\+91[\-\s]?)?[6-9]\d{9}$/.test(s);

Zip Code (US)

string

5 digit or 5+4 (12345-6789).

#address#us#postal
ts
const isValid = (s: string): boolean => /^\d{5}(?:[-\s]\d{4})?$/.test(s);

Postcode (UK)

string

Standard UK postcode format.

#address#uk
ts
const isValid = (s: string): boolean => /^[A-Z]{1,2}[0-9][A-Z0-9]? ?[0-9][A-Z]{2}$/.test(s);

Postcode (Canada)

string

Format A1A 1A1.

#address#canada
ts
const isValid = (s: string): boolean => /^[ABCEGHJ-NPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][ -]?\d[ABCEGHJ-NPRSTV-Z]\d$/.test(s);

Pincode (India)

string

6 digit pincode.

#address#india
ts
const isValid = (s: string): boolean => /^[1-9][0-9]{5}$/.test(s);

Lat/Long Coordinates

string

Valid latitude, longitude pair.

#geo#map
ts
const isValid = (s: string): boolean => /^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?),\s*[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/.test(s);

Latitude Only

string

-90 to 90.

#geo
ts
const isValid = (s: string): boolean => /^[-+]?([1-8]?\d(\.\d+)?|90(\.0+)?)$/.test(s);

Longitude Only

string

-180 to 180.

#geo
ts
const isValid = (s: string): boolean => /^[-+]?(180(\.0+)?|((1[0-7]\d)|([1-9]?\d))(\.\d+)?)$/.test(s);

Username (Basic)

string

3-16 chars, alphanumeric, underscore, hyphen.

#web#auth
ts
const isValid = (s: string): boolean => /^[a-z0-9_-]{3,16}$/.test(s);

Twitter Handle

string

Standard Twitter handle (w/ optional @).

#social
ts
const isValid = (s: string): boolean => /^@?(\w){1,15}$/.test(s);

Hashtag

string

Valid social media hashtag.

#social
ts
const isValid = (s: string): boolean => /^#[a-zA-Z0-9_]+$/.test(s);

YouTube Video ID

string

Extracts ID or validates URL.

#media#url
ts
const isValid = (s: string): boolean => /^(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^\/\n\s]+\/\S+\/|(?:v|e(?:mbed)?)\/|\S*?[?&]v=)|youtu\.be\/)([a-zA-Z0-9_-]{11})/.test(s);

Email (Simple)

string

Common email validation (lighter than RFC).

#contact#web
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(s);

URL Slug

string

SEO-friendly URL part.

#web#seo
ts
const isValid = (s: string): boolean => /^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(s);

Hex Color

string

#RGB or #RRGGBB.

#css#design
ts
const isValid = (s: string): boolean => /^#?([a-fA-F0-9]{3}|[a-fA-F0-9]{6})$/.test(s);

UUID (v4)

string

Universal Unique Identifier.

#id#db
ts
const isValid = (s: string): boolean => /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/.test(s);

MD5 Hash

string

32 char hex hash.

#crypto#hash
ts
const isValid = (s: string): boolean => /^[a-f0-9]{32}$/.test(s);

SHA256 Hash

string

64 char hex hash.

#crypto#hash
ts
const isValid = (s: string): boolean => /^[a-f0-9]{64}$/.test(s);

Base64 String

string

Valid Base64 encoding.

#encoding
ts
const isValid = (s: string): boolean => /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(s);

JSON String (Simple)

string

Basic check for {} or [].

#data
ts
const isValid = (s: string): boolean => /^[\[\{].*[\]\}]$/.test(s);

Alphabetic Only

string

A-Z case insensitive.

#text
ts
const isValid = (s: string): boolean => /^[a-zA-Z]+$/.test(s);

Alphanumeric

string

A-Z and 0-9.

#text
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9]+$/.test(s);

Numeric String

string

Digits only.

#text
ts
const isValid = (s: string): boolean => /^[0-9]+$/.test(s);

No Whitespace

string

Strings without spaces/tabs.

#text
ts
const isValid = (s: string): boolean => /^\S+$/.test(s);

Phone (Australia)

string

Australian mobile format.

#phone#australia
ts
const isValid = (s: string): boolean => /^(\+61|0)4\d{8}$/.test(s);

Phone (Germany)

string

German phone format.

#phone#germany
ts
const isValid = (s: string): boolean => /^(\+49|0)[1-9]\d{1,14}$/.test(s);

Phone (France)

string

French phone format.

#phone#france
ts
const isValid = (s: string): boolean => /^(\+33|0)[1-9]\d{8}$/.test(s);

Phone (Japan)

string

Japanese phone format.

#phone#japan
ts
const isValid = (s: string): boolean => /^(\+81|0)[789]0\d{8}$/.test(s);

Phone (Brazil)

string

Brazilian phone format.

#phone#brazil
ts
const isValid = (s: string): boolean => /^(\+55)?\d{2}9?\d{8}$/.test(s);

Instagram Handle

string

Valid Instagram username.

#social#instagram
ts
const isValid = (s: string): boolean => /^@?[a-zA-Z0-9._]{1,30}$/.test(s);

TikTok Handle

string

Valid TikTok username.

#social#tiktok
ts
const isValid = (s: string): boolean => /^@?[a-zA-Z0-9._]{2,24}$/.test(s);

LinkedIn Profile URL

string

LinkedIn profile link.

#social#linkedin
ts
const isValid = (s: string): boolean => /^https?:\/\/(www\.)?linkedin\.com\/in\/[a-zA-Z0-9_-]+\/?$/.test(s);

GitHub Username

string

Valid GitHub username.

#social#github
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,37}[a-zA-Z0-9])?$/.test(s);

Discord Username

string

Discord username format.

#social#discord
ts
const isValid = (s: string): boolean => /^.{2,32}#\d{4}$/.test(s);

Telegram Handle

string

Telegram username.

#social#telegram
ts
const isValid = (s: string): boolean => /^@?[a-zA-Z][a-zA-Z0-9_]{4,31}$/.test(s);

Data URI

string

Base64 data URI format.

#encoding#uri
ts
const isValid = (s: string): boolean => /^data:[a-zA-Z]+\/[a-zA-Z]+;base64,[A-Za-z0-9+/]+=*$/.test(s);

Magnet URI

string

Magnet link format.

#torrent#uri
ts
const isValid = (s: string): boolean => /^magnet:\?xt=urn:[a-zA-Z0-9]+:[a-zA-Z0-9]+/.test(s);

RGB Color

string

rgb(255,255,255) format.

#css#color
ts
const isValid = (s: string): boolean => /^rgb\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*\)$/.test(s);

RGBA Color

string

rgba with alpha channel.

#css#color
ts
const isValid = (s: string): boolean => /^rgba\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(0|1|0?\.\d+)\s*\)$/.test(s);

HSL Color

string

hsl(360,100%,100%) format.

#css#color
ts
const isValid = (s: string): boolean => /^hsl\(\s*(\d{1,3})\s*,\s*(\d{1,3})%\s*,\s*(\d{1,3})%\s*\)$/.test(s);

Hex Color (8 digit)

string

#RRGGBBAA with alpha.

#css#color
ts
const isValid = (s: string): boolean => /^#[a-fA-F0-9]{8}$/.test(s);

Country Code (2-letter)

string

ISO 3166-1 alpha-2.

#country#iso
ts
const isValid = (s: string): boolean => /^[A-Z]{2}$/.test(s);

Country Code (3-letter)

string

ISO 3166-1 alpha-3.

#country#iso
ts
const isValid = (s: string): boolean => /^[A-Z]{3}$/.test(s);

Language Code

string

ISO 639-1 (e.g. en, fr).

#language#iso
ts
const isValid = (s: string): boolean => /^[a-z]{2}(-[A-Z]{2})?$/.test(s);

Locale Code

string

Format: en_US, fr_FR.

#i18n#locale
ts
const isValid = (s: string): boolean => /^[a-z]{2}(_[A-Z]{2})?$/.test(s);

ISBN-10

string

10-digit book identifier.

#book#isbn
ts
const isValid = (s: string): boolean => /^\d{9}[\dXx]$/.test(s);

ISBN-13

string

13-digit book identifier.

#book#isbn
ts
const isValid = (s: string): boolean => /^97[89]\d{10}$/.test(s);

EAN-13 Barcode

string

Product barcode.

#barcode#retail
ts
const isValid = (s: string): boolean => /^\d{13}$/.test(s);

UPC-A Barcode

string

US product code.

#barcode#retail
ts
const isValid = (s: string): boolean => /^\d{12}$/.test(s);

Amazon ASIN

string

Amazon product ID.

#amazon#product
ts
const isValid = (s: string): boolean => /^B0[A-Z0-9]{8}$/.test(s);

CSS Class Name

string

Valid CSS class selector.

#css#frontend
ts
const isValid = (s: string): boolean => /^-?[_a-zA-Z][_a-zA-Z0-9-]*$/.test(s);

HTML ID

string

Valid HTML id attribute.

#html#frontend
ts
const isValid = (s: string): boolean => /^[a-zA-Z][a-zA-Z0-9_-]*$/.test(s);

CSS Unit

string

Valid CSS unit (px, em, rem, %).

#css#unit
ts
const isValid = (s: string): boolean => /^-?\d+(\.\d+)?(px|em|rem|%|vh|vw|pt|cm|mm|in)$/.test(s);

Hex Opacity

string

00-FF opacity value.

#css#opacity
ts
const isValid = (s: string): boolean => /^[0-9a-fA-F]{2}$/.test(s);

Environment Variable

string

Valid env var name.

#env#config
ts
const isValid = (s: string): boolean => /^[A-Z][A-Z0-9_]*$/.test(s);

MIME Type

string

Valid MIME type format.

#mime#content
ts
const isValid = (s: string): boolean => /^[a-z]+\/[a-z0-9.+-]+$/.test(s);

YouTube Channel ID

string

YouTube channel identifier.

#youtube#channel
ts
const isValid = (s: string): boolean => /^UC[a-zA-Z0-9_-]{22}$/.test(s);

Spotify URI

string

Spotify resource URI.

#spotify#music
ts
const isValid = (s: string): boolean => /^spotify:(track|album|artist|playlist):[a-zA-Z0-9]+$/.test(s);

Apple Music ID

string

Apple Music track ID.

#apple#music
ts
const isValid = (s: string): boolean => /^\d{9,12}$/.test(s);

Phone (Mexico)

string

Mexican phone format.

#phone#mexico
ts
const isValid = (s: string): boolean => /^(\+52)?\d{10}$/.test(s);

Phone (South Korea)

string

Korean phone format.

#phone#korea
ts
const isValid = (s: string): boolean => /^(\+82|0)1[0-9]\d{7,8}$/.test(s);

Phone (Russia)

string

Russian phone format.

#phone#russia
ts
const isValid = (s: string): boolean => /^(\+7|8)?\d{10}$/.test(s);

Phone (Italy)

string

Italian phone format.

#phone#italy
ts
const isValid = (s: string): boolean => /^(\+39)?3\d{9}$/.test(s);

Phone (Spain)

string

Spanish phone format.

#phone#spain
ts
const isValid = (s: string): boolean => /^(\+34)?[6-9]\d{8}$/.test(s);

Phone (Netherlands)

string

Dutch phone format.

#phone#netherlands
ts
const isValid = (s: string): boolean => /^(\+31|0)6\d{8}$/.test(s);

Phone (Poland)

string

Polish phone format.

#phone#poland
ts
const isValid = (s: string): boolean => /^(\+48)?[5-9]\d{8}$/.test(s);

Phone (Sweden)

string

Swedish phone format.

#phone#sweden
ts
const isValid = (s: string): boolean => /^(\+46|0)7\d{8}$/.test(s);

Phone (Switzerland)

string

Swiss phone format.

#phone#switzerland
ts
const isValid = (s: string): boolean => /^(\+41|0)7[5-9]\d{7}$/.test(s);

Phone (UAE)

string

UAE phone format.

#phone#uae
ts
const isValid = (s: string): boolean => /^(\+971|0)5[024568]\d{7}$/.test(s);

Phone (Singapore)

string

Singapore phone format.

#phone#singapore
ts
const isValid = (s: string): boolean => /^(\+65)?[89]\d{7}$/.test(s);

Phone (South Africa)

string

South African phone format.

#phone#southafrica
ts
const isValid = (s: string): boolean => /^(\+27|0)[6-8]\d{8}$/.test(s);

Phone (Nigeria)

string

Nigerian phone format.

#phone#nigeria
ts
const isValid = (s: string): boolean => /^(\+234|0)[789]0\d{8}$/.test(s);

Phone (Egypt)

string

Egyptian phone format.

#phone#egypt
ts
const isValid = (s: string): boolean => /^(\+20|0)1[0125]\d{8}$/.test(s);

Phone (Pakistan)

string

Pakistani phone format.

#phone#pakistan
ts
const isValid = (s: string): boolean => /^(\+92|0)3[0-9]{9}$/.test(s);

Pinterest Profile

string

Pinterest profile URL.

#social#pinterest
ts
const isValid = (s: string): boolean => /^https?:\/\/(www\.)?pinterest\.(com|co\.uk)\/[a-zA-Z0-9_]+\/?$/.test(s);

Snapchat Username

string

Valid Snapchat username.

#social#snapchat
ts
const isValid = (s: string): boolean => /^[a-zA-Z][a-zA-Z0-9._-]{2,14}$/.test(s);

Reddit Username

string

Reddit username format.

#social#reddit
ts
const isValid = (s: string): boolean => /^u\/[a-zA-Z0-9_-]{3,20}$/.test(s);

Subreddit Name

string

Valid subreddit format.

#social#reddit
ts
const isValid = (s: string): boolean => /^r\/[a-zA-Z0-9_]{3,21}$/.test(s);

Twitch Username

string

Valid Twitch username.

#social#twitch
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9_]{4,25}$/.test(s);

Medium Handle

string

Medium username format.

#social#medium
ts
const isValid = (s: string): boolean => /^@[a-zA-Z0-9._]+$/.test(s);

Mastodon Handle

string

Mastodon username@instance.

#social#mastodon
ts
const isValid = (s: string): boolean => /^@[a-zA-Z0-9_]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(s);

Bluesky Handle

string

Bluesky username format.

#social#bluesky
ts
const isValid = (s: string): boolean => /^@?[a-zA-Z0-9.-]+\.bsky\.social$/.test(s);

Threads Handle

string

Instagram Threads username.

#social#threads
ts
const isValid = (s: string): boolean => /^@?[a-zA-Z0-9._]{1,30}$/.test(s);

Facebook Page URL

string

Facebook page link.

#social#facebook
ts
const isValid = (s: string): boolean => /^https?:\/\/(www\.)?facebook\.com\/[a-zA-Z0-9.]+\/?$/.test(s);

ICD-10 Code

string

Medical diagnosis code.

#healthcare#medical
ts
const isValid = (s: string): boolean => /^[A-Z][0-9]{2}(\.[0-9A-Z]{1,4})?$/.test(s);

SNOMED CT

string

Clinical terminology code.

#healthcare#medical
ts
const isValid = (s: string): boolean => /^\d{6,18}$/.test(s);

RxNorm Code

string

Drug identifier code.

#healthcare#pharmacy
ts
const isValid = (s: string): boolean => /^\d{1,7}$/.test(s);

NDC Code

string

National Drug Code.

#healthcare#pharmacy
ts
const isValid = (s: string): boolean => /^\d{4,5}-\d{3,4}-\d{1,2}$/.test(s);

Course Code

string

University course code.

#education#course
ts
const isValid = (s: string): boolean => /^[A-Z]{2,4}\s?\d{3,4}[A-Z]?$/.test(s);

GPA

string

Grade point average 0.0-4.0.

#education#grade
ts
const isValid = (s: string): boolean => /^[0-4]\.[0-9]{1,2}$/.test(s);

SAT Score

string

SAT score 400-1600.

#education#test
ts
const isValid = (s: string): boolean => /^(1[0-5][0-9]{2}|1600|[4-9][0-9]{2})$/.test(s);

SKU

string

Stock Keeping Unit.

#ecommerce#product
ts
const isValid = (s: string): boolean => /^[A-Z0-9]{6,20}$/.test(s);

Order ID

string

E-commerce order format.

#ecommerce#order
ts
const isValid = (s: string): boolean => /^ORD-\d{8,12}$/.test(s);

UPS Tracking

string

UPS tracking number.

#shipping#ups
ts
const isValid = (s: string): boolean => /^1Z[A-Z0-9]{16}$/.test(s);

FedEx Tracking

string

FedEx tracking number.

#shipping#fedex
ts
const isValid = (s: string): boolean => /^[0-9]{12,22}$/.test(s);

USPS Tracking

string

USPS tracking number.

#shipping#usps
ts
const isValid = (s: string): boolean => /^(94|93|92|91|[0-9]{20})\d{18,22}$/.test(s);

Promo Code

string

Promotional code format.

#ecommerce#discount
ts
const isValid = (s: string): boolean => /^[A-Z0-9]{4,16}$/.test(s);

Coupon Code

string

Coupon format.

#ecommerce#discount
ts
const isValid = (s: string): boolean => /^[A-Z]{2,4}-[A-Z0-9]{4,8}$/.test(s);

Steam ID

string

Steam user ID.

#gaming#steam
ts
const isValid = (s: string): boolean => /^STEAM_[0-5]:[01]:\d+$/.test(s);

Steam ID (64-bit)

string

64-bit Steam ID.

#gaming#steam
ts
const isValid = (s: string): boolean => /^7656119\d{10}$/.test(s);

Xbox Gamertag

string

Xbox Live gamertag.

#gaming#xbox
ts
const isValid = (s: string): boolean => /^[a-zA-Z][a-zA-Z0-9]{0,14}$/.test(s);

PSN ID

string

PlayStation Network ID.

#gaming#playstation
ts
const isValid = (s: string): boolean => /^[a-zA-Z][a-zA-Z0-9_-]{2,15}$/.test(s);

Nintendo Friend Code

string

Nintendo Switch friend code.

#gaming#nintendo
ts
const isValid = (s: string): boolean => /^SW-\d{4}-\d{4}-\d{4}$/.test(s);

Epic Games ID

string

Epic Games username.

#gaming#epic
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9_-]{3,16}$/.test(s);

Riot ID

string

Riot Games ID format.

#gaming#riot
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9_]{3,16}#[a-zA-Z0-9]{3,5}$/.test(s);

WhatsApp Link

string

WhatsApp click-to-chat.

#messaging#whatsapp
ts
const isValid = (s: string): boolean => /^https?:\/\/(wa\.me|api\.whatsapp\.com)\/[0-9]+$/.test(s);

Signal Number

string

Signal phone format.

#messaging#signal
ts
const isValid = (s: string): boolean => /^\+[1-9]\d{6,14}$/.test(s);

Slack Channel

string

Slack channel name.

#messaging#slack
ts
const isValid = (s: string): boolean => /^#?[a-z0-9][a-z0-9_-]{0,79}$/.test(s);

Slack User ID

string

Slack user identifier.

#messaging#slack
ts
const isValid = (s: string): boolean => /^[UW][A-Z0-9]{8,}$/.test(s);

Teams Meeting URL

string

Microsoft Teams meeting.

#messaging#teams
ts
const isValid = (s: string): boolean => /^https:\/\/teams\.microsoft\.com\/l\/meetup-join\/.+$/.test(s);

Zoom Meeting ID

string

Zoom meeting identifier.

#messaging#zoom
ts
const isValid = (s: string): boolean => /^\d{9,11}$/.test(s);

IATA Airport Code

string

3-letter airport code.

#travel#airport
ts
const isValid = (s: string): boolean => /^[A-Z]{3}$/.test(s);

ICAO Airport Code

string

4-letter airport code.

#travel#airport
ts
const isValid = (s: string): boolean => /^[A-Z]{4}$/.test(s);

Flight Number

string

Airline flight number.

#travel#airline
ts
const isValid = (s: string): boolean => /^[A-Z]{2}\d{1,4}$/.test(s);

PNR Code

string

Passenger Name Record.

#travel#booking
ts
const isValid = (s: string): boolean => /^[A-Z0-9]{6}$/.test(s);

E-Ticket Number

string

13-digit e-ticket.

#travel#airline
ts
const isValid = (s: string): boolean => /^\d{13}$/.test(s);

Frequent Flyer Number

string

Loyalty program ID.

#travel#loyalty
ts
const isValid = (s: string): boolean => /^[A-Z]{2}\d{8,12}$/.test(s);

DOI

string

Digital Object Identifier.

#science#publication
ts
const isValid = (s: string): boolean => /^10\.\d{4,9}\/[-._;()/:A-Z0-9]+$/.test(s);

PubMed ID

string

PubMed article identifier.

#science#medical
ts
const isValid = (s: string): boolean => /^\d{1,8}$/.test(s);

arXiv ID

string

arXiv paper identifier.

#science#paper
ts
const isValid = (s: string): boolean => /^\d{4}\.\d{4,5}(v\d+)?$/.test(s);

Chemical Formula

string

Basic chemical formula.

#science#chemistry
ts
const isValid = (s: string): boolean => /^[A-Z][a-z]?(\d+)?([A-Z][a-z]?(\d+)?)*$/.test(s);

CAS Number

string

Chemical registry number.

#science#chemistry
ts
const isValid = (s: string): boolean => /^\d{2,7}-\d{2}-\d$/.test(s);

InChI Key

string

Chemical identifier key.

#science#chemistry
ts
const isValid = (s: string): boolean => /^[A-Z]{14}-[A-Z]{10}-[A-Z]$/.test(s);

Case Number (US)

string

Federal court case.

#legal#court
ts
const isValid = (s: string): boolean => /^\d{1,2}:\d{2}-[a-z]{2}-\d{4,5}$/.test(s);

Patent Number (US)

string

US patent number.

#legal#patent
ts
const isValid = (s: string): boolean => /^(US)?\d{7,8}$/.test(s);

Trademark Number

string

USPTO trademark.

#legal#trademark
ts
const isValid = (s: string): boolean => /^\d{7,8}$/.test(s);

Aspect Ratio

string

Video aspect ratio.

#video#media
ts
const isValid = (s: string): boolean => /^\d+:\d+$/.test(s);

Resolution

string

Video resolution.

#video#media
ts
const isValid = (s: string): boolean => /^\d{3,4}x\d{3,4}$/.test(s);

Frame Rate

string

FPS format.

#video#media
ts
const isValid = (s: string): boolean => /^\d{1,3}(\.\d+)?\s?fps$/.test(s);

Bitrate

string

Bitrate format.

#audio#media
ts
const isValid = (s: string): boolean => /^\d+\s?(kbps|mbps|Kbps|Mbps)$/.test(s);

SMPTE Timecode

string

HH:MM:SS:FF format.

#video#timecode
ts
const isValid = (s: string): boolean => /^\d{2}:\d{2}:\d{2}:\d{2}$/.test(s);

Audio Duration

string

MM:SS format.

#audio#duration
ts
const isValid = (s: string): boolean => /^\d{1,3}:\d{2}$/.test(s);

CSS Color Name

string

Named CSS color.

#css#color
ts
const isValid = (s: string): boolean => /^(red|blue|green|yellow|black|white|gray|grey|orange|purple|pink|brown|cyan|magenta)$/.test(s);

Mobile User Agent

string

Mobile browser detection.

#browser#mobile
ts
const isValid = (s: string): boolean => /(Android|iPhone|iPad|iPod|Mobile)/.test(s);

Bot User Agent

string

Search engine bot.

#browser#bot
ts
const isValid = (s: string): boolean => /(Googlebot|Bingbot|Slurp|DuckDuckBot|Baiduspider)/.test(s);

Windows Version

string

Windows version string.

#os#windows
ts
const isValid = (s: string): boolean => /^Windows\s(10|11|NT\s\d+\.\d+)$/.test(s);

macOS Version

string

macOS version string.

#os#macos
ts
const isValid = (s: string): boolean => /^(Mac\s)?OS\sX?\s?1[0-5]\.\d+$/.test(s);

iOS Version

string

iOS version format.

#os#ios
ts
const isValid = (s: string): boolean => /^iOS\s1[0-7]\.\d+$/.test(s);

Android Version

string

Android version.

#os#android
ts
const isValid = (s: string): boolean => /^Android\s1[0-4]$/.test(s);

Disposable Email

string

Temp email domains.

#email#spam
ts
const isValid = (s: string): boolean => /@(tempmail|guerrillamail|10minutemail|mailinator|throwaway)\./.test(s);

Corporate Email

string

Business email format.

#email#business
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9._%+-]+@(?!gmail|yahoo|hotmail|outlook)[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(s);

Educational Email

string

.edu email address.

#email#education
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.edu$/.test(s);

Government Email

string

.gov email address.

#email#government
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.gov$/.test(s);

YAML Key

string

Valid YAML key.

#config#yaml
ts
const isValid = (s: string): boolean => /^[a-zA-Z_][a-zA-Z0-9_]*$/.test(s);

TOML Key

string

Valid TOML key.

#config#toml
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9_-]+$/.test(s);

INI Section

string

INI file section.

#config#ini
ts
const isValid = (s: string): boolean => /^\[[a-zA-Z0-9_]+\]$/.test(s);

Dotenv Variable

string

.env variable name.

#config#env
ts
const isValid = (s: string): boolean => /^[A-Z][A-Z0-9_]*$/.test(s);

NPM Package Name

string

Valid npm package.

#npm#package
ts
const isValid = (s: string): boolean => /^(@[a-z0-9-~][a-z0-9-._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/.test(s);

PyPI Package Name

string

Valid Python package.

#python#package
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9]([a-zA-Z0-9._-]*[a-zA-Z0-9])?$/.test(s);

Ruby Gem Name

string

Valid gem name.

#ruby#package
ts
const isValid = (s: string): boolean => /^[a-z][a-z0-9_-]*$/.test(s);

Cargo Crate Name

string

Valid Rust crate.

#rust#package
ts
const isValid = (s: string): boolean => /^[a-z][a-z0-9_-]*$/.test(s);

Maven Artifact ID

string

Maven artifact format.

#java#package
ts
const isValid = (s: string): boolean => /^[a-z][a-z0-9-]*$/.test(s);

NuGet Package

string

Valid NuGet package.

#dotnet#package
ts
const isValid = (s: string): boolean => /^[a-zA-Z0-9.]+$/.test(s);

Log Level

string

Standard log levels.

#logging#level
ts
const isValid = (s: string): boolean => /^(DEBUG|INFO|WARN|WARNING|ERROR|FATAL|CRITICAL)$/.test(s);

Syslog Priority

string

Syslog priority format.

#logging#syslog
ts
const isValid = (s: string): boolean => /^<\d{1,3}>$/.test(s);

Boolean String

string

String boolean value.

#validation#boolean
ts
const isValid = (s: string): boolean => /^(true|false|yes|no|1|0)$/.test(s);

Nullable String

string

Null-like string values.

#validation#null
ts
const isValid = (s: string): boolean => /^(null|nil|none|undefined|)$/.test(s);

Hex String

string

Hexadecimal string.

#hex#encoding
ts
const isValid = (s: string): boolean => /^[0-9a-fA-F]+$/.test(s);

About String & Regex Validators

Our string & regex validation snippets are designed to handle the most common validation scenarios you'll encounter in modern software development. Each snippet is thoroughly tested, optimized for performance, and follows industry best practices.

All validators are available in multiple programming languages including JavaScript, TypeScript, Python, Go, PHP, C#, and Rust. Simply copy the code snippet, adapt it to your specific needs, and integrate it into your project. Every snippet is MIT licensed—free for personal and commercial use.

Browse Other Categories