ForHosting KIT · Utilidades de desarrollo

Explique un patrón regex en lenguaje sencillo

Vea qué hace cada pieza de una expresión regular: la expresión de correo de muestra se divide en 16 partes explicadas con 3 grupos de captura, el primero llamado user, cada una con su posición y una descripción clara. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Indicadores
i
Obtiene
Sabor
ECMAScript
Grupos de captura
3

Una expresión regular puede caber en una sola línea y, aun así, ocultar muchas reglas independientes. Este analizador valida un patrón ECMAScript, lo recorre de izquierda a derecha y etiqueta grupos, cuantificadores, clases de caracteres, anclas, escapes, alternativas, comodines y texto literal. Cada componente incluye su posición, profundidad de anidamiento y una explicación clara, para que usted pueda revisar, aprender, documentar y depurar el patrón sin modificarlo ni ejecutarlo sobre datos privados.

Lea la explicación en el orden del patrón

Comience por el array de componentes, que conserva el orden exacto del patrón de izquierda a derecha. Cada entrada identifica un tipo, mantiene el token original e indica un índice basado en cero y su longitud. Estas posiciones permiten relacionar una explicación con los caracteres precisos de una expresión extensa, sin adivinar a qué paréntesis o signo de interrogación se refiere.

El valor de profundidad muestra dónde se encuentra un token dentro de grupos anidados. Las entradas de inicio y final de grupo hacen explícita la estructura, y los grupos de captura reciben su número según el orden de apertura. Las capturas con nombre también conservan ese nombre.

Cuando es posible, los literales contiguos se mantienen juntos para que el texto normal siga siendo legible. Lea primero las entradas en secuencia y use después los recuentos para localizar construcciones que merezcan más atención.

Comprenda grupos, clases y repeticiones

Los grupos definen la estructura y, en ocasiones, capturan texto para reutilizarlo. Un paréntesis simple inicia una captura numerada; la secuencia de signo de interrogación y dos puntos abre un grupo sin captura; y las capturas con nombre se muestran con el nombre declarado. Las anticipaciones y retrospecciones se distinguen porque comprueban el texto circundante sin consumirlo.

Las clases de caracteres se describen como una coincidencia con un carácter de la lista; las clases negadas se señalan expresamente y se resumen rangos sencillos como de A a Z. Los escapes incluyen descripciones para dígitos, caracteres de palabra, espacios, límites, referencias inversas, propiedades Unicode y caracteres codificados. Los cuantificadores se aplican conceptualmente al elemento anterior: el asterisco significa cero o más, el signo más uno o más, el interrogante indica opcionalidad y las llaves expresan una repetición exacta, mínima o acotada.

Un interrogante final cambia una repetición voraz por una perezosa, por lo que la explicación indica que prefiere menos repeticiones.

Valide la sintaxis y reconozca la variante

El patrón se valida con el motor de expresiones regulares ECMAScript antes de devolver cualquier explicación. Esto es importante porque las variantes difieren: la sintaxis copiada de PCRE, Python, Java o . NET puede tener otro significado en JavaScript, y ciertas construcciones pueden rechazarse por completo.

Envíe el cuerpo de la expresión sin barras delimitadoras y coloque las banderas opcionales de JavaScript en el campo flags. La validación confirma que la expresión compila, pero no demuestra que coincida con los datos empresariales previstos, que sea eficiente para cualquier entrada ni que evite un retroceso excesivo. Use la explicación para revisar la estructura y pruebe después ejemplos representativos que deban coincidir y no coincidir.

Como el algoritmo es determinista, no usa red ni examina texto de prueba, el mismo patrón y las mismas banderas siempre producen la misma explicación estructurada.

Revise una expresión heredada

Convierta un patrón denso de un código antiguo en una lista ordenada de construcciones comprensibles antes de modificarlo.

Documente reglas de validación

Genere notas estructuradas sobre grupos, caracteres permitidos, anclas y reglas de repetición de un formulario o servicio.

Aprenda sintaxis de expresiones regulares

Compare los tokens originales con explicaciones concisas y posiciones de origen mientras estudia patrones ECMAScript.

¿Qué variante de expresión regular explica?

Valida y explica expresiones regulares ECMAScript, la sintaxis que utiliza RegExp en JavaScript.

¿La herramienta prueba el patrón con mi texto?

No. Solo explica la sintaxis y no necesita texto de prueba. Use aparte un probador regex para verificar coincidencias.

¿Identifica grupos de captura con nombre y número?

Sí. Numera las capturas por orden de apertura e incluye el nombre declarado de los grupos con nombre.

¿Debo incluir las barras que rodean la expresión?

No. Escriba solo el cuerpo de la expresión, sin las barras, e indique las opciones aparte, por ejemplo i para no distinguir mayúsculas. Las opciones no válidas o repetidas se rechazan con un mensaje claro.

¿Qué significa un signo de interrogación tras una repetición?

Convierte la repetición en perezosa, es decir, que prefiere el menor número de repeticiones, y la explicación lo indica de forma expresa. Solo, justo después de un elemento, el signo de interrogación lo vuelve opcional.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/dev2/regex-explain

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/dev2/regex-explain \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"pattern":"^(?<user>[A-Za-z0-9._%+-]+)@([A-Za-z0-9.-]+)\\.([A-Za-z]{2,})$"}'
{
  "pattern": "^(?<user>[A-Za-z0-9._%+-]+)@([A-Za-z0-9.-]+)\\.([A-Za-z]{2,})$"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev2.regex_explain",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

max_pattern_chars2000
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

Lea la explicación en el orden del patrón

El resumen ofrece un recuento rápido y component_counts resulta práctico para documentación automática o informes de revisión.

Valide la sintaxis y reconozca la variante

La sintaxis inválida, las banderas no admitidas y las banderas duplicadas devuelven un error tipado invalid_input, nunca una explicación parcial o engañosa.

¿Debo incluir las barras delimitadoras?

No. Envíe únicamente el cuerpo en pattern y coloque las banderas, como i o m, en el campo flags.

¿Qué ocurre si la expresión es inválida?

La solicitud devuelve un error invalid_input con el problema de compilación. No se entrega una explicación parcial.

¿Cuánto cuesta una solicitud de API?

El precio base de la API es $0.002 por solicitud. La misma lógica determinista también puede ejecutarse en el navegador.

Ver la documentación completa del KIT →