un nombre de dominio
Coincide con un nombre de dominio. Está anclado en ambos extremos, así que debe coincidir la cadena entera. No tiene grupos de captura.
Patrón
/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$/- Alcance
- la cadena entera
- Grupos de captura
- 0
- Lo que captura en el primer ejemplo
- example.com
Pruébalo
Escribe cualquier texto y se marcará lo que captura la expresión. Todo ocurre en tu navegador y no se envía a ninguna parte.
example.com
1 coincidencia
Ejemplos que coinciden
- example.com
- sub.example.co.kr
Ejemplos que no coinciden
- example
- -bad.com
- example.c
Otras expresiones del grupo
^[^\s@]+@[^\s@.]+(?:\.[^\s@.]+)+$una dirección de correo^https?://[^\s/$.?#][^\s]*$una dirección web^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)$una dirección IPv4^(?:[0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$una dirección IPv6 escrita completa^(?:[0-9a-f]{2}[:-]){5}[0-9a-f]{2}$una dirección MAC^(?:6553[0-5]|655[0-2]\d|65[0-4]\d{2}|6[0-4]\d{3}|[1-5]?\d{1,4})$un número de puerto^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$un UUID^#(?:[0-9a-f]{3}|[0-9a-f]{6})$un código de color hexadecimalCómo leerlo
- Con ^ y $ alrededor, debe coincidir la cadena entera; sin ellos, la coincidencia puede estar en cualquier parte. Ancla siempre lo que uses para validar.
- Los paréntesis ( ) capturan lo que envuelven. Si solo necesitas agrupar, escribe (?: ) para que no se desplace la numeración.
- Cada expresión de aquí se comprueba con sus ejemplos. Aun así, "parece un correo" y "es un buzón real" son cosas distintas.
- Las repeticiones abiertas anidadas como (a+)+ pueden dispararse con ciertas entradas. Busca esa forma antes de pegar una expresión ajena.
Preguntas frecuentes
Q. ¿Cuál es la regex para un nombre de dominio?
^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$.
Q. ¿Qué cadenas coinciden?
Un texto como example.com coincide; uno como example no.
Q. ¿Debe coincidir la cadena entera?
Sí. Va entre ^ y $, así que solo pasa una coincidencia completa.
Q. ¿Cómo uso lo capturado?
No hay grupos de captura, así que solo vuelve la coincidencia completa (match[0]). Envuelve entre paréntesis la parte que necesites.