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

  1. Escribe la expresión regular y las banderas.
  2. 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.