Cómo probar una expresión regular antes de que rompa tu código
Una expresión regular que parece correcta puede, sin que te des cuenta, coincidir con lo que no debe, pasar por alto un caso límite o no coincidir con nada. La forma más barata de detectarlo es probar el patrón contra texto de ejemplo real antes de que se acerque siquiera a tu código. Esta guía explica qué es una regex en términos sencillos y cómo probar una de forma segura usando la herramienta gratuita Probador de Regex.
Qué es realmente una expresión regular
Una expresión regular, o regex, es un pequeño patrón que describe una forma de texto. En lugar de buscar una palabra exacta, describes la regla: “una arroba con letras a ambos lados”, o “uno o más dígitos”, o “una palabra al inicio de una línea”. Todo lo que coincide con esa forma es un acierto.
Ese poder es también la trampa. Un patrón puede coincidir con más de lo que pretendías (demasiado codicioso) o con menos de lo que necesitas (demasiado estricto), y la diferencia suele ser un solo carácter que no puedes detectar a simple vista. En realidad no sabes lo que hace una regex hasta que la ejecutas contra un texto y observas qué se ilumina.
Por qué probar contra texto de ejemplo ahorra horas
Depurar una regex dentro de un programa en ejecución es lento y doloroso: cambias el patrón, reinicias, le das datos y entornas los ojos ante la salida. Un probador dedicado reduce ese ciclo. Pegas tu patrón y un bloque de texto representativo, y resalta cada coincidencia al instante. Ves qué acertó, qué se saltó y por qué.
El truco está en probar contra texto que refleje la realidad. Incluye los casos complicados a propósito:
- Los ejemplos limpios que esperas que coincidan.
- Los casos casi pero no del todo que no deberían coincidir.
- Las entradas reales y desordenadas con espacios de más, puntuación rara o mayúsculas y minúsculas mezcladas.
Si tu patrón sobrevive a los tres, es mucho más probable que sobreviva en producción.
Patrones comunes para empezar
Rara vez escribes una regex desde una página en blanco. Unos pocos bloques de construcción cubren la mayoría de las necesidades cotidianas:
- Dígitos.
\dcoincide con un solo dígito;\d+coincide con uno o más seguidos, ideal para encontrar números. - Caracteres de palabra.
\w+coincide con letras, dígitos y guiones bajos, útil para capturar identificadores. - Una forma aproximada de correo electrónico. Algo como
\S+@\S+\.\S+captura el patrón básico de “texto, arroba, texto, punto, texto” para una comprobación rápida. - Anclas.
^ata una coincidencia al inicio de una línea y$al final, de modo que coincides con entradas completas en lugar de fragmentos.
Trátalos como puntos de partida. Lo correcto es pegar uno, ver cómo se comporta con tu propio texto y ajustarlo desde ahí.
Cómo probar una regex en tu navegador
La herramienta gratuita Probador de Regex se ejecuta por completo en tu navegador, así que el patrón y cualquier texto de ejemplo que pegues permanecen en tu propio dispositivo y nunca se suben. Eso importa cuando tus datos de prueba son líneas de registro reales o datos de usuarios.
- Abre la herramienta e introduce tu patrón.
- Pega un bloque de texto de ejemplo, incluidos los casos límite que quieras verificar.
- Observa cómo se resaltan las coincidencias mientras escribes y ajusta el patrón hasta que solo se ilumine el texto correcto.
- Copia el patrón ya funcional en tu código con confianza.
Como la coincidencia ocurre en la pestaña, puedes probar contra datos de ejemplo sensibles sin que salgan de tu máquina.
Itera en pasos pequeños y seguros
La forma fiable de construir una regex es hacerla crecer poco a poco en lugar de escribir una expresión gigante y cruzar los dedos. Empieza con el patrón más simple que coincida con tu caso principal, confírmalo en el probador y luego añade una restricción a la vez. Después de cada cambio, vuelve a comprobar que tus ejemplos de “no deberían coincidir” siguen oscuros. Si un ajuste de pronto coincide con algo que no debería, sabes exactamente qué cambio lo causó. Los pasos pequeños convierten la regex de adivinanza en algo sobre lo que realmente puedes razonar.
Herramientas relacionadas para trabajar con texto
Una regex suele ser un paso dentro de un trabajo más amplio de manipulación de texto. Cuando los datos contra los que coincides son JSON, el Formateador de JSON los indenta primero para que puedas ver la estructura a la que apuntas. Cuando ajustas un patrón y quieres ver exactamente qué cambió en la salida, el Comparador de Diferencias resalta las diferencias línea por línea. Y si estás extrayendo piezas de direcciones web, el Analizador de URL descompone una URL en sus partes, lo que suele ser más limpio que hacer coincidir todo a mano.
La versión corta
Una regex describe una forma de texto, y la única manera de confiar en ella es probarla contra ejemplos reales antes de que toque tu código. Aliméntala con tus coincidencias esperadas, tus casi aciertos y tus entradas desordenadas, luego itera una restricción a la vez. La herramienta gratuita Probador de Regex hace esto en vivo en tu navegador, de forma privada y sin registro, para que puedas acertar con el patrón antes de que tenga la oportunidad de romper nada.
Prueba Probador de Regex ahora
Probador de regex online gratis. Escribe un patrón y banderas, pega tu texto y mira cada coincidencia con su posición y grupos de captura en vivo.
Abrir Probador de Regex