martes, 9 de septiembre de 2025

Expresión regular de Correo (Mejorada)

NOTA: Recuerden que si requieren ayuda con alguna Expresión regular, me pueden escribir y los apoyo sin problema.

La validación es la siguiente:

^[a-z](\.?[a-z\d_\-]){0,63}@[a-z]([_\-\.]?([a-z]\d?)?[a-z]){0,63}$

Este documento describe las reglas para validar correos electronicos de acuerdo con las especificaciones RFC 5321/5322 y las reglas de DNS

------------------------------------------------------------------------

## Reglas principales

### Parte local (antes de la @)

- Puede contener letras, numeros y caracteres especiales: `. _ -`
- No puede empezar ni terminar con `.`
- No puede tener dos puntos seguidos `..`
- Longitud maxima: **64 caracteres**

Ejemplos validos:

- `usuario@ejemplo.com`
- `nombre.apellido@dominio.org`
- `usuario@dominio.com`
- `nombre.apellido@ejemplo.org`
- `pepito123@empresa.net`
- `abc_def@dominio.co`
- `u@d.io`
- `mi-correo@sub.dominio.com`
- `contacto@empresa-aero.aero`
- `x@mi-dominio.space`
- `abc.def@ejemplo.travel`
- `bolt@perrito.xyz`
- `a@b.co`

Ejemplos invalidos:

- `pepito+promo@empresa.net`
- `.usuario@ejemplo.com`
- `usuario.@ejemplo.com`
- `usuario..prueba@ejemplo.com`
- `.usuario@ejemplo.com`
- `usuario.@ejemplo.com`
- `usuario..prueba@ejemplo.com`
- `usuario@-dominio.com`
- `usuario@dominio-.com`
- `bolt@perrito.3com`
- `algo@dominio.123`
- `nombre apellido@ejemplo.com`
- `user@do..main.com`
- `us..er@dominio.com`

------------------------------------------------------------------------

### Dominio (despues de la @)

- Se divide en **etiquetas** separadas por `.`
- Cada etiqueta:
- Debe comenzar y terminar con letra o numero
- Puede contener guiones `-` en medio (Ni al principio ni al final)
- Maximo **63 caracteres**
- Longitud total del dominio: **253 caracteres**
Ejemplos validos:

- `mi-dominio.com`
- `sub.dominio.org`
- `empresa-aero.aero`
Ejemplos invalidos:

- `-dominio.com` (correo@-dominio.com)
- `dominio-.com` (correo@dominio-.com)

------------------------------------------------------------------------

### TLD (ultima parte)

- Solo letras (no puede ser solo numeros)
- Longitud: 1 a 63 caracteres

Ejemplos validos:

- `.com`
- `.org`
- `.xyz`
- `.museum`
- `.space`
- `.coffee`

Ejemplos invalidos:

- `.123` (solo numeros)
- `.3com` (empieza con numero seguido de letras)

------------------------------------------------------------------------

## Ejemplos validos poco comunes

- `pepito@dominio.x`
- `user@sub.dominio.museum`
- `contacto@empresa-aero.aero`
- `bolt@perrito.xyz`
- `abc.def@ejemplo.travel`
- `x@mi-dominio.space`
- `a@b.co`

------------------------------------------------------------------------

## Ejemplos invalidos

- `bolt@perrito.3com`
- `algo@dominio.123`
- `.@ejemplo.com`
- `nombre..apellido@ejemplo.com`
- `usuario@-dominio.com`
- `usuario@dominio-.com`
- `yo+promo@ejemplo.email`
- `"nombre raro"@ejemplo.com`

------------------------------------------------------------------------

NOTA: No puse acentos porque el MD donde lo estaba haciendo no los acepta.

Agradecimientos especiales, en esta ocasión me estuvo apoyando mi equipo de trabajo

Yami
Fredy
Humano
Tili
Rober
Lalo
Néstor
Marcos

No hay comentarios:

Publicar un comentario