Regex
Probador de regex
Prueba expresiones regulares sobre tu propio texto, en vivo.
Acerca de las expresiones regulares
Una expresión regular (regex) es un patrón que describe un conjunto de cadenas — se usa para buscar, validar o extraer texto. Este probador ejecuta el motor de regex nativo de JavaScript completamente en tu navegador, para que puedas experimentar con un patrón sobre texto real y ver exactamente qué coincide.
Los cuantificadores existen en dos variantes fáciles de confundir: los codiciosos (+, *, {2,5}) consumen tanto texto como sea posible antes de retroceder (backtracking) para permitir que el resto del patrón coincida, mientras que sus equivalentes perezosos (+?, *?, {2,5}?) consumen en cambio tan poco como sea posible. Frente a <a><b> con <.+>, una coincidencia codiciosa captura toda la cadena, mientras que <.+?> se detiene en el primer >. Los grupos tienen una bifurcación similar: (...) captura el texto coincidente para una referencia posterior, mientras que (?:...) agrupa de la misma manera sin capturar —útil cuando necesitas la precedencia de la agrupación pero no su salida.
Dónde te lo encontrarás
- Validar formatos de entrada como direcciones de correo, números de teléfono o códigos postales
- Extraer valores estructurados de líneas de registro o texto no estructurado
- Escribir un patrón de buscar y reemplazar para una refactorización en muchos archivos
- Depurar por qué un patrón coincide más, o menos, de lo esperado
Preguntas frecuentes
¿Por qué mi patrón solo coincide una vez?
Sin el indicador g (global), los métodos de regex de JavaScript se detienen tras la primera coincidencia — ese es el comportamiento real que vería también tu código, no una limitación de esta herramienta. Activa g para encontrar todas las coincidencias.
¿Se envía a un servidor lo que escribo aquí?
No. La coincidencia ocurre completamente en tu navegador usando el motor de regex integrado de JavaScript — nada se transmite a ningún sitio, lo que también evita exponer un servidor a un patrón deliberadamente lento de "backtracking catastrófico".
¿Por qué a veces la página se congela con un patrón?
Ciertos patrones, como cuantificadores anidados del tipo (a+)+, pueden causar un backtracking catastrófico, donde el tiempo de coincidencia crece exponencialmente con la longitud de la entrada. Si un patrón se cuelga, el problema es el patrón en sí, no esta herramienta — prueba un texto de prueba más corto o reescribe el patrón para evitar repeticiones anidadas.
¿Cuál es la diferencia entre cuantificadores codiciosos y perezosos?
Un cuantificador codicioso (+, *, {2,5}) hace coincidir primero tanto texto como sea posible, y solo retrocede si eso hace fallar el resto del patrón. Su equivalente perezoso, escrito con un ? final (+?, *?), hace coincidir en cambio tan poco como sea posible, expandiéndose solo cuando debe. Frente a <a><b>, el patrón codicioso <.+> coincide con toda la cadena, mientras que el perezoso <.+?> se detiene en el primer >. Recurre a los cuantificadores perezosos siempre que "la coincidencia más corta posible" sea lo que realmente quieres.