Expresión Regular Tester
Prueba y depura expresiones regulares al instante en tu navegador. Resalta coincidencias, ve grupos de captura y usa el modo reemplazar — gratis y privado.
Prueba y depura expresiones regulares al instante en tu navegador. Resalta coincidencias, ve grupos de captura y usa el modo reemplazar — gratis y privado.
Las expresiones regulares son un lenguaje de dominio específico para hacer coincidir patrones en el texto. Han sido parte de la informática desde 1968 y ahora están integrados en todos los lenguajes de programación, editores de texto y herramientas de búsqueda de línea de comandos modernos. La sintaxis es concisa pero propensa a errores: pequeños cambios producen un comportamiento de coincidencia sutilmente diferente y las expresiones complejas se vuelven ilegibles rápidamente. Un probador que muestra coincidencias en tiempo real a medida que edita el patrón es la forma más eficaz de desarrollar y verificar expresiones regulares.
Este probador se ejecuta en su navegador utilizando el motor de expresiones regulares JavaScript (el mismo que usa su aplicación si se ejecuta en un navegador). Los patrones y el texto de prueba se actualizan reactivamente: cada cambio en cualquiera de los dos vuelve a ejecutar la coincidencia. Los grupos coincidentes se resaltan, los grupos capturados se enumeran y las marcas (sin distinción entre mayúsculas y minúsculas, multilínea, globales) se exponen para realizar pruebas.
La sintaxis de expresiones regulares varía sutilmente entre motores. JavaScript sigue la especificación ECMAScript; Python, PCRE (utilizado por PHP y muchos otros), Java y Go tienen cada uno sus propios dialectos con características superpuestas pero no idénticas. Los patrones desarrollados aquí utilizan la sintaxis ECMAScript; La portabilidad entre motores requiere verificar la documentación de cada objetivo.
Los errores de expresiones regulares son muy difíciles de depurar después de la implementación. Un patrón que parece razonable puede coincidir más o menos con lo previsto, fallar en casos extremos o tener un retroceso catastrófico en ciertas entradas. La prueba de patrones de forma interactiva frente a entradas representativas detecta problemas antes de la revisión y producción del código.
Los patrones también se benefician de la documentación. Mostrar una expresión regular junto a la entrada que debería coincidir y la entrada que no debería coincidir hace que la intención sea explícita. Los futuros mantenedores (incluido usted mismo dentro de seis meses) aprecian los casos de prueba documentados más que las frases ingeniosas.
Escriba un patrón, escriba una entrada de prueba, vea los partidos resaltados en vivo.
La expresión regular de JavaScript sigue la especificación ECMAScript. Características principales: clases de caracteres ([abc], [^abc]), cuantificadores (*, +, ?, {n,m}), alternancia (|), agrupación ((...)), captura y no captura de grupos, búsqueda anticipada y posterior (motores modernos), referencias inversas, grupos con nombre, escapes de propiedades Unicode (con bandera u) y el conjunto estándar de secuencias de escape.
Diferencias importantes con PCRE y Python: la compatibilidad con retrospectiva es reciente en JavaScript (2018+); los grupos con nombre utilizan la sintaxis (?<nombre>...); algunos escapes Unicode requieren que el indicador u funcione correctamente. Los patrones destinados al uso en varios idiomas deben compararse con la documentación de cada destino.
Rendimiento: los motores de expresiones regulares basados en retroceso (la mayoría incluye JavaScript) pueden tener un retroceso catastrófico en ciertos patrones patológicos. Las pruebas que cuelgan al evaluador son una señal de que el patrón necesita simplificación, generalmente evitando cuantificadores anidados y alternancia ambigua.