Expressões regulares·um nome de domínio
Publicidade

Garanta seu bônus em uma corretora de cripto

Bônus que você recebe só por se cadastrar. As condições são as que cada corretora anuncia.

um nome de domínio

Casa com um nome de domínio. Está ancorado nas duas pontas, então a cadeia inteira precisa casar. Não tem grupos de captura.

Padrão
/^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$/
Alcance
a cadeia inteira
Grupos de captura
0
O que captura no primeiro exemplo
example.com

Experimente

Digite qualquer texto e as partes capturadas serão marcadas. Tudo roda no seu navegador e nada é enviado.

example.com

1 correspondência

Exemplos que casam

  • example.com
  • sub.example.co.kr

Exemplos que não casam

  • example
  • -bad.com
  • example.c

Outras expressões do grupo

Como ler

  • Com ^ e $ em volta, a cadeia inteira precisa casar; sem eles, a correspondência pode estar em qualquer lugar. Ancore sempre o que usar para validar.
  • Os parênteses ( ) capturam o que envolvem. Se você só precisa agrupar, escreva (?: ) para a numeração não se deslocar.
  • Cada expressão aqui é conferida com seus exemplos. Ainda assim, "parece um e-mail" e "é uma caixa real" são coisas diferentes.
  • Repetições abertas aninhadas como (a+)+ podem explodir com certas entradas. Procure esse formato antes de colar uma expressão alheia.

Perguntas frequentes

QQual é a regex para um nome de domínio?

^(?:[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?\.)+[a-z]{2,}$.

QQuais cadeias casam?

Um texto como example.com casa; um como example não.

QA cadeia inteira precisa casar?

Sim. Está entre ^ e $, então só passa uma correspondência completa.

QComo uso o que foi capturado?

Não há grupos de captura, então volta só a correspondência inteira (match[0]). Coloque entre parênteses a parte que precisar.