IronFuentesEnglish
P09 · 14 reglas · 13 casos del paquete

Constructor de regex por ejemplos

Das ejemplos que sí y que no, y devuelve la expresión regular con su explicación.

Cálculo verificadoEl resultado depende sólo de tus datos y de fórmulas comprobadas por las pruebas.

Escribe ejemplos que deben coincidir y ejemplos que no, y devuelve una expresión que acepta todos los primeros y rechaza todos los segundos. Si no logra generalizar, entrega la versión literal, que siempre funciona.

Tus ejemplos

Uno por línea.

Cómo debe coincidir
La expresióngeneralizada

^(?:FAC\-202[0-9]\-[0-9][0-9][0-9][0-9])$

ecmascript · 3 aceptados y 4 rechazados, todos comprobados

Probada contra los 3 ejemplos aceptados y los 4 rechazados que diste, y contra nada más. Que funcione con esos no demuestra que funcione con los que no escribiste: si te importa un caso, añádelo como ejemplo y vuelve a generar.

Qué dice, pieza por pieza

  • ^empieza aquí: nada puede sobrar por delante
  • (?:abre un grupo que no se captura
  • Fel carácter «F»
  • Ael carácter «A»
  • Cel carácter «C»
  • \-ese carácter tal cual, sin significado especial
  • 2el carácter «2»
  • 0el carácter «0»
  • 2el carácter «2»
  • [0-9]un dígito
  • \-ese carácter tal cual, sin significado especial
  • [0-9]un dígito
  • [0-9]un dígito
  • [0-9]un dígito
  • [0-9]un dígito
  • )cierra el grupo
  • $termina aquí: nada puede sobrar por detrás

Los candidatos que se probaron

Aptitud = 1000 × fallos + complejidad. Gana la más baja entre las que no fallan.

Cada expresión candidata con su origen, cuántos ejemplos falla y su aptitud.
CandidatoFallaComplejidadAptitud
FAC\-2023\-1199|FAC\-2024\-0001|FAC\-2024\-0842Los ejemplos tal cual, escapados y unidos.04343
FAC\-202[0-9]\-[0-9][0-9][0-9][0-9]Todos miden 13; cada posición admite lo que se vio en ella.elegida01313
FAC\-202[\-0123489]{6}Todos empiezan por «FAC-202», y el centro varía.01919
FAC\-[0-9]{4}\-[0-9]{4}Todos se parten en 3 trozos por «-»; cada trozo se generaliza aparte.01313
Alternativa literal

^(?:FAC\-2023\-1199|FAC\-2024\-0001|FAC\-2024\-0842)$

Siempre disponible. Es más larga y no cubre casos nuevos, pero no puede equivocarse con los que ya tienes.

Bitácora

4 decisiones
  1. P09-R-003

    Alternación exacta: acepta los positivos por construcción.

  2. P09-R-004

    Generalizaciones probadas: clase única, clase por posición, prefijo con sufijo y partición por delimitador.

  3. P09-R-009

    Menor aptitud entre los 4 candidato(s) sin fallos; a igual aptitud, el que menos generaliza.

  4. P09-R-013

    No se afirma cobertura sobre casos que no se aportaron.

motor 1.0.0 · paquete 06cc40e2f262351d…