Probador de expresiones regulares
Acerca de esta herramienta
Ejecuta expresiones regulares sobre el texto de entrada y revisa las coincidencias. Todo se procesa en tu navegador; no se envía ningún dato.
Ejecutar prueba
—
Cómo usar
- Escribe la expresión regular y las banderas.
- Pulsa «Ejecutar prueba» para resaltar las coincidencias en el texto de entrada.
Ejemplos (más de 100 patrones listos para usar por categoría)
Básicos / espacios / líneas
- Sólo una línea en blanco:
^\s*$
(m) - Espacios iniciales:
^\s+
(m) - Espacios finales:
\s+$
(m) - Espacios iniciales/finales (para recortar):
^\s+|\s+$
(m) - Espacios consecutivos (comprimir a uno):
\s{2,}
- Caracteres visibles (sin espacios):
\S+
- Sólo ASCII:
^[\x00-\x7F]+$
- ASCII imprimible:
^[\x20-\x7E]+$
- Línea que contiene caracteres no ASCII:
[^\x00-\x7F]
- Límite de palabra:
\bword\b
Números / moneda
- Entero (signo opcional):
^-?\d+$
- Decimal (signo opcional):
^-?\d*\.\d+$
- Número (entero o decimal):
^-?(?:\d+|\d*\.\d+)$
- Separación por miles (p. ej.: 1,234,567):
^\d{1,3}(?:,\d{3})+$
- Moneda (¥ o $ con separadores opcionales):
^(?:¥|\$)\s?\d{1,3}(?:,\d{3})*(?:\.\d{2})?$
- Porcentaje:
^\d{1,3}(?:\.\d+)?%
- Notación científica:
^[+-]?(?:\d+\.?\d*|\.\d+)[eE][+-]?\d+$
- Hexadecimal:
^(?:0x)?[0-9A-Fa-f]+$
- Binario:
^[01]+$
- Octal:
^[0-7]+$
Fechas / horarios
- Fecha YYYY-MM-DD (solo formato):
^\d{4}-\d{2}-\d{2}$
- Hora HH:MM (24 h):
^(?:[01]\d|2[0-3]):[0-5]\d$
- Hora HH:MM:SS (24 h):
^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$
- Fecha y hora ISO8601 (simplificada):
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$
- Año y mes (YYYY/MM):
^\d{4}/(0[1-9]|1[0-2])$
- Era japonesa Reiwa (simplificada):
^令和\d+年(?:\d+月(?:\d+日)?)?$
(u) - Día de la semana (inglés, 3 letras):
^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)$
- Zona horaria (±HH:MM):
^[+-](?:[01]\d|2[0-3]):[0-5]\d$
Contactos / direcciones (rápidos)
- Código postal de Japón:
^\d{3}-\d{4}$
- Teléfono japonés (formato 0x-xxxx-xxxx, simple):
^0\d{1,4}-\d{1,4}-\d{4}$
- Teléfono internacional (prefijo + país con espacios):
^\+\d{1,3}\s?\d+(?:[\s-]\d+)*$
- Prefecturas de Japón (kanji):
^(?:東京都|北海道|(?:京都|大阪)府|.+県)$
(u) - Correo electrónico (verificación rápida):
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
- Nombre de usuario (3–16 caracteres alfanuméricos/_):
^[A-Za-z0-9_]{3,16}$
- Contraseña fuerte (mayúsculas/minúsculas/dígito/símbolo ≥1, longitud ≥ 8):
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W_]).{8,}$
Web / URL / HTTP
- URL (http/https, comprobación rápida):
https?:\/\/\S+
- Dominio (sin Punycode, simple):
^(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$
- Host con subdominios:
^(?:[A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]{2,}$
- Parámetro de consulta key=value:
[?&]([A-Za-z0-9._~-]+)=([^&#]+)
- Fragmento:
#\w[\w-]*
- Extensión de archivo (.png|.jpg|.gif, etc.):
\.(?:png|jpe?g|gif|webp|svg)$
(i) - Métodos HTTP:
^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)$
- Línea de cabecera HTTP:
^[A-Za-z0-9-]+:\s?.+$
(m) - Cabecera de autenticación Basic:
^Basic\s+[A-Za-z0-9+/=]+$
- Cabecera de token Bearer:
^Bearer\s+[A-Za-z0-9\-\._~\+\/]+=*$
Red (IP/MAC/CIDR/UUID/JWT, etc.)
- IPv4 (0–255 estricto):
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\b
- IPv6 (admite compresión, simple):
\b(?:[A-Fa-f0-9]{1,4}:){2,7}[A-Fa-f0-9]{1,4}\b
- Dirección MAC (separada por :):
^(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$
- Dirección MAC (separada por -):
^(?:[0-9A-Fa-f]{2}-){5}[0-9A-Fa-f]{2}$
- CIDR (IPv4, longitud 0–32):
^\b(?:\d{1,3}\.){3}\d{1,3}\/(?:[0-9]|[12]\d|3[0-2])\b$
- UUID v4:
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
(i) - GUID (insensible a mayúsculas):
^{?[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}}?$
(i) - Base64 (con relleno):
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
- JWT (tres segmentos separados por punto):
^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$
- Clave pública SSH (ssh-rsa/ed25519):
^ssh-(?:rsa|ed25519)\s+[A-Za-z0-9+/=]+(?:\s.+)?$
Archivos / rutas / versiones
- Ruta absoluta de Windows:
^[A-Za-z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$
- Ruta absoluta de UNIX:
^\/(?:[^\/\0]+\/)*[^\/\0]*$
- Nombre de archivo seguro (letras/números ._-):
^[A-Za-z0-9._-]+$
- Capturar extensión:
\.([A-Za-z0-9]+)$
- Hash de Git (7–40 caracteres):
^[0-9a-f]{7,40}$
- SemVer:
^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$
- Imagen:tag de Docker:
^[a-z0-9]+(?:[._-][a-z0-9]+)*(?::[\w.-]+)?$
- Nombre de paquete NPM (simple):
^(?:@[\w-]+\/)?[\w.-]+$
- Slug de URL:
^[a-z0-9]+(?:-[a-z0-9]+)*$
Front-end web (HTML/CSS/colores)
- Etiqueta HTML (inicio/fin, simple):
<([A-Za-z][A-Za-z0-9]*)\b[^>]*>([\s\S]*?)<\/\1>
- Comentario HTML:
<!--[\s\S]*?-->
- Valor del atributo href:
href\s*=\s*"(.*?)"
(i) - Color CSS (#RGB/#RRGGBB):
^#(?:[0-9A-Fa-f]{3}){1,2}$
- CSS rgb():
^rgb\(\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*\)$
- CSS hsl():
^hsl\(\s*(?:\d|[1-2]\d{2}|3[0-5]\d)\s*,\s*(?:\d|[1-9]\d)%\s*,\s*(?:\d|[1-9]\d)%\s*\)$
- Unidad CSS (px, em, etc.):
^-?\d+(?:\.\d+)?(?:px|em|rem|vh|vw|%)$
Cadenas / sintaxis (fragmentos de programación)
- Identificador de JavaScript (simple):
^[A-Za-z_$][A-Za-z0-9_$]*$
- Línea de comentario JavaScript //:
^\s*\/\/.*$
(m) - Comentario de bloque JavaScript:
\/\*[\s\S]*?\*\/
- Cadena con comillas dobles (escape simple):
"(?:[^"\\]|\\.)*"
- Cadena con comillas simples:
'(?:[^'\\]|\\.)*'
- Literal de plantilla (simplificado):
`(?:[^`\\]|\\.|\\${[^}]*})*`
- Clave JSON:
"([A-Za-z0-9_]+)"\s*:
- Celda CSV (maneja comillas dobles):
(?:"(?:[^"]|"")*"|[^,\r\n]*)
- Extraer URL en cuerpo de correo:
https?:\/\/[^\s)>"]+
Seguridad / validación (uso con precaución)
- Tarjeta de crédito (sin Luhn, verificación rápida):
\b(?:\d[ -]*?){13,19}\b
- VISA (empieza con 4, 13/16/19 dígitos):
\b4\d{12}(?:\d{3})?(?:\d{3})?\b
- Mastercard (51–55 / 2221–2720):
\b(?:5[1-5]\d{14}|2(?:2[2-9]\d{2}|[3-6]\d{3}|7[01]\d{2}|720\d{2})\d{10})\b
- My Number japonés (solo formato, sin validación):
^\d{12}$
- Código postal + línea de dirección (simple):
^\d{3}-\d{4}\s+.+$
- Detección de etiquetas <script> para XSS (simple):
<\s*script\b[^>]*>[\s\S]*?<\s*\/\s*script\s*>
- Palabras tipo SQL (búsqueda rápida):
\b(SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b
(i)
Nota: si utilizas esto para extraer o validar información personal o confidencial, revisa la legislación y las políticas internas correspondientes.
Formatos de registros
- Apache/Nginx CLF (simple):
^(\S+)\s+(\S+)\s+(\S+)\s+\[([^\]]+)\]\s+"([^"]+)"\s+(\d{3})\s+(\d+|-)
- Extraer marca temporal ISO8601:
\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})
- Líneas JSON (1 línea = 1 JSON):
^\{.*\}$
(m) - Extraer UUID:
[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}
(i) - Extraer IP (IPv4 simple):
\b(?:\d{1,3}\.){3}\d{1,3}\b
Markdown
- Encabezados (#–######):
^(#{1,6})\s+(.+)$
(m) - Enlaces:
\[([^\]]+)\]\(([^)]+)\)
- Imágenes:
!\[([^\]]*)\]\(([^)]+)\)
- Código en línea:
`([^`]+)`
- Bloques de código (```…``` simple):
```[\s\S]*?```
- Listas con viñetas (- * +):
^\s*[-*+]\s+.+$
(m) - Citas >:
^\s*>\s+.+$
(m)
Escritura japonesa y tipos de caracteres (Unicode, se recomienda bandera u)
- Solo hiragana:
^[\u3041-\u3096]+$
(u) - Solo katakana:
^[\u30A1-\u30FA\u30FC]+$
(u) - Solo katakana de ancho medio:
^[\uFF66-\uFF9D\uFF70]+$
(u) - Contiene kanji:
[\u4E00-\u9FFF]
(u) - Solo caracteres de ancho completo:
^[^\x00-\x7F]+$
- Alfanumérico de ancho completo:
^[\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A]+$
(u) - Código postal japonés (acepta dígitos de ancho completo, simple):
^[0-9\d]{3}-[0-9\d]{4}$
(u) - Furigana (katakana de ancho completo):
^[\u30A1-\u30FA\u30FC\s]+$
(u)
Utilidades de formateo y extracción de texto
- Eliminar números iniciales "1. ":
^\s*\d+\.\s*
(m) - Eliminar prefijos de listas:
^\s*(?:[-*+]|•|\d+\.)\s*
(m) - Extraer contenido entre paréntesis:
\(([^)]*)\)
- Extraer dentro de comillas dobles:
"([^"\\]|\\.)*"
- Extraer montos en yenes "¥123,456":
¥\s?\d{1,3}(?:,\d{3})*
- Extraer dominio de correo:
@([A-Za-z0-9.-]+\.[A-Za-z]{2,})
- Eliminar etiquetas HTML (simple):
<[^>]+>
- Reducir espacios repetidos a uno:
\s{2,}
Otros útiles
- Matrículas japonesas (muy simple):
^[\u3041-\u3096\u30A1-\u30FA\u4E00-\u9FFF]{1,2}\s?\d{3,4}$
(u) - ID de vídeo de YouTube:
(?<=v=|youtu\.be\/)[A-Za-z0-9_-]{11}
- Usuario de Twitter/X @handle:
@[A-Za-z0-9_]{1,15}
- Canal de Slack:
#[a-z0-9_-]{1,80}
- Nombres de colores (algunas palabras clave CSS):
\b(?:red|green|blue|black|white|gray|silver|maroon)\b
(i) - Extraer notas entre corchetes japoneses 〔…〕:
[([^]]*)]|【([^】]*)】|〔([^〕]*)〕
(u) - Detectar katakana de ancho medio:
[\uFF61-\uFF9F]
(u) - Palabras en inglés (incluye guiones):
\b[A-Za-z]+(?:-[A-Za-z]+)*\b
- Número de pedido en correos (ej. #12345):
#\d{4,}
- Nombres de estaciones japonesas (termina en «駅»):
.+駅\b
(u)
Nota: la lista anterior es una versión práctica con patrones comunes listos para usar. Para validaciones exhaustivas (años bisiestos, dominios internacionalizados, análisis completo de HTML, etc.), considera lógica o bibliotecas especializadas.