Expressões regulares·um endereço IPv6 escrito por extenso

um endereço IPv6 escrito por extenso

Casa com um endereço IPv6 escrito por extenso. Está ancorado nas duas pontas, então a cadeia inteira precisa casar. Não tem grupos de captura.

Padrão
/^(?:[0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$/i
Alcance
a cadeia inteira
Grupos de captura
0
Flags
i · ignorar maiúsculas
O que captura no primeiro exemplo
2001:0db8:85a3:0000:0000:8a2e:0370:7334

Experimente

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

2001:0db8:85a3:0000:0000:8a2e:0370:7334

1 correspondência

Exemplos que casam

  • 2001:0db8:85a3:0000:0000:8a2e:0370:7334
  • fe80:0:0:0:0:0:0:1

Exemplos que não casam

  • 2001:db8::1
  • 1:2:3:4:5:6:7

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

Q. Qual é a regex para um endereço IPv6 escrito por extenso?

^(?:[0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$, com a flag i.

Q. Quais cadeias casam?

Um texto como 2001:0db8:85a3:0000:0000:8a2e:0370:7334 casa; um como 2001:db8::1 não.

Q. A cadeia inteira precisa casar?

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

Q. Como 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.