Skip to main content
CheckTown

Biblioteca de expresiones regulares

Navega por patrones regex comunes organizados por categoría

Pruebe sus patrones en nuestro probador de Regex

Correo electronico

Simple Email

^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

Matches a basic email address format

Coincidencia: user@example.comSin coincidencia: user@.com

Email with Display Name

^[^<]*<[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}>$

Matches an email with a display name like "John Doe <john@example.com>"

Coincidencia: John Doe <john@example.com>Sin coincidencia: john@example.com

Email Domain Extraction

@([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})

Extracts the domain part from an email address

Coincidencia: user@example.comSin coincidencia: no-at-sign-here

No-Reply Email

^no-?reply@

Matches email addresses starting with no-reply or noreply

Coincidencia: no-reply@example.comSin coincidencia: contact@example.com

URL

URL with Protocol

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

Matches a URL starting with http:// or https://

Coincidencia: https://example.com/pathSin coincidencia: ftp://example.com

URL Slug

^[a-z0-9]+(?:-[a-z0-9]+)*$

Matches a URL-safe slug with lowercase letters, numbers, and hyphens

Coincidencia: my-blog-postSin coincidencia: My Blog Post

Domain Name

^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$

Matches a valid domain name like example.com or sub.domain.org

Coincidencia: sub.example.comSin coincidencia: -invalid.com

URL Query Parameter

[?&]([^=]+)=([^&]*)

Extracts key=value pairs from URL query strings

Coincidencia: ?name=John&age=30Sin coincidencia: /path/without/params

YouTube Video ID

(?:youtube\.com\/watch\?v=|youtu\.be\/)([a-zA-Z0-9_-]{11})

Extracts the 11-character video ID from YouTube URLs

Coincidencia: https://youtu.be/dQw4w9WgXcQSin coincidencia: https://vimeo.com/12345

Fecha y hora

ISO 8601 Date

^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$

Matches dates in ISO 8601 format (YYYY-MM-DD)

Coincidencia: 2024-12-31Sin coincidencia: 31-12-2024

Date (MM/DD/YYYY)

^(0[1-9]|1[0-2])\/(0[1-9]|[12]\d|3[01])\/\d{4}$

Matches dates in US format (MM/DD/YYYY)

Coincidencia: 12/31/2024Sin coincidencia: 31/12/2024

Date (DD/MM/YYYY)

^(0[1-9]|[12]\d|3[01])\/(0[1-9]|1[0-2])\/\d{4}$

Matches dates in European format (DD/MM/YYYY)

Coincidencia: 31/12/2024Sin coincidencia: 2024-12-31

24-Hour Time

^([01]\d|2[0-3]):([0-5]\d)(?::([0-5]\d))?$

Matches time in 24-hour format with optional seconds

Coincidencia: 23:59:59Sin coincidencia: 25:00

12-Hour Time

^(0?[1-9]|1[0-2]):[0-5]\d\s?(?:AM|PM|am|pm)$

Matches time in 12-hour format with AM/PM

Coincidencia: 2:30 PMSin coincidencia: 13:30 PM

Numero

Integer

^-?\d+$

Matches positive or negative whole numbers

Coincidencia: -42Sin coincidencia: 3.14

Decimal Number

^-?\d+\.?\d*$

Matches positive or negative numbers with optional decimal part

Coincidencia: 3.14Sin coincidencia: abc

Hex Color

^#(?:[0-9a-fA-F]{3}){1,2}$

Matches 3 or 6 digit hex color codes with # prefix

Coincidencia: #ff6600Sin coincidencia: #gggggg

Currency (USD)

^\$\d{1,3}(,\d{3})*(\.\d{2})?$

Matches US dollar amounts with optional cents and thousands separators

Coincidencia: $1,234.56Sin coincidencia: 1234.56

Percentage

^-?\d+(\.\d+)?%$

Matches percentage values with optional decimal part

Coincidencia: 99.9%Sin coincidencia: 99.9

Telefono

International Phone

^\+?[1-9]\d{1,14}$

Matches international phone numbers in E.164 format

Coincidencia: +14155552671Sin coincidencia: 0000000

US Phone

^(\+1)?[-.\s]?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}$

Matches US phone numbers in various formats

Coincidencia: (415) 555-2671Sin coincidencia: 123

Phone with Extension

^(\+?\d{1,3})?[-.\s]?\(?\d{3}\)?[-.\s]?\d{3}[-.\s]?\d{4}(\s*(ext|x|ext.)\s*\d{2,5})?$

Matches phone numbers with optional country code and extension

Coincidencia: +1 415-555-2671 ext 1234Sin coincidencia: not-a-phone

Digits Only (Phone)

^\d{10,15}$

Matches phone numbers as digit-only strings (10 to 15 digits)

Coincidencia: 4155552671Sin coincidencia: 12345

IP y red

IPv4 Address

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

Matches a valid IPv4 address (0.0.0.0 to 255.255.255.255)

Coincidencia: 192.168.1.1Sin coincidencia: 256.1.1.1

IPv4 with Port

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

Matches an IPv4 address followed by a port number

Coincidencia: 192.168.1.1:8080Sin coincidencia: 192.168.1.1

IPv6 Address

^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$

Matches a full IPv6 address (8 groups of hex digits)

Coincidencia: 2001:0db8:85a3:0000:0000:8a2e:0370:7334Sin coincidencia: 192.168.1.1

MAC Address

^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$

Matches a MAC address with colon or dash separators

Coincidencia: 00:1A:2B:3C:4D:5ESin coincidencia: 001A2B3C4D5E

CIDR Notation

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

Matches an IPv4 address with CIDR subnet notation

Coincidencia: 192.168.1.0/24Sin coincidencia: 192.168.1.0/33

Archivo y ruta

File Extension

\.([a-zA-Z0-9]+)$

Extracts the file extension from a filename

Coincidencia: document.pdfSin coincidencia: no-extension

Unix File Path

^\/(?:[^\/ ]+\/)*[^\/ ]+$

Matches an absolute Unix/Linux file path

Coincidencia: /usr/local/bin/nodeSin coincidencia: relative/path

Windows File Path

^[a-zA-Z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$

Matches an absolute Windows file path

Coincidencia: C:\Users\docs\file.txtSin coincidencia: /usr/local/bin

Image File

\.(jpe?g|png|gif|bmp|svg|webp|ico|tiff?)$

Matches filenames with common image extensions

Coincidencia: photo.jpgSin coincidencia: script.js

Contraseña

Min 8 Characters

^.{8,}$

Matches any string with at least 8 characters

Coincidencia: password123Sin coincidencia: short

Strong Password

^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$

Requires uppercase, lowercase, digit, and special character (min 8 chars)

Coincidencia: P@ssw0rd!Sin coincidencia: password

No Spaces

^\S+$

Matches strings that contain no whitespace characters

Coincidencia: no-spaces-hereSin coincidencia: has spaces

Alphanumeric Only

^[a-zA-Z0-9]+$

Matches strings containing only letters and digits

Coincidencia: abc123Sin coincidencia: hello world!

HTML y XML

HTML Tag

<\/?[a-zA-Z][a-zA-Z0-9]*[^>]*>

Matches opening and closing HTML tags

Coincidencia: <div class="test">Sin coincidencia: plain text

HTML Comment

<!--[\s\S]*?-->

Matches HTML comments including multiline content

Coincidencia: <!-- comment -->Sin coincidencia: // js comment

HTML Attribute

([a-zA-Z-]+)\s*=\s*"([^"]*)"

Extracts attribute name and value pairs from HTML elements

Coincidencia: class="active"Sin coincidencia: no-attribute

Self-Closing Tag

<[a-zA-Z][a-zA-Z0-9]*[^>]*\/>

Matches self-closing HTML/XML tags like <br /> or <img />

Coincidencia: <img src="test.png" />Sin coincidencia: <div>content</div>

Varios

UUID v4

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

Matches a UUID version 4 string (lowercase hex)

Coincidencia: 550e8400-e29b-41d4-a716-446655440000Sin coincidencia: not-a-uuid

JWT Token

^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$

Matches the three-part structure of a JSON Web Token

Coincidencia: eyJhbGci.eyJzdWIi.SflKxwRJSin coincidencia: not.a.jwt.token

Markdown Link

\[([^\]]+)\]\(([^)]+)\)

Matches Markdown-style links [text](url)

Coincidencia: [Google](https://google.com)Sin coincidencia: plain text link

Semantic Version

^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-([\da-zA-Z-]+(?:\.[\da-zA-Z-]+)*))?$

Matches semantic version strings like 1.2.3 or v2.0.0-beta.1

Coincidencia: v2.1.0-beta.1Sin coincidencia: 1.2

Base64 String

^[A-Za-z0-9+/]*={0,2}$

Matches valid Base64-encoded strings

Coincidencia: SGVsbG8gV29ybGQ=Sin coincidencia: Hello World!!!

Más información

Biblioteca Regex: Patrones comunes que realmente usarás

Explora una colección curada de patrones regex para correo, URL, fecha y más.

¿Qué es una biblioteca de regex?

Una biblioteca de regex es una colección curada de patrones de expresiones regulares para tareas comunes de validación y extracción. En lugar de escribir regex desde cero cada vez, puedes explorar patrones probados para emails, URLs, fechas, direcciones IP y docenas de otros formatos.

5 min de lecturaLeer la guía completa

Preguntas frecuentes