Grupos de captura no método match em expressões regulares do JavaScript

Como você já sabe, a substring encontrada através do método match vai para o elemento zero do array de resultados. Nos outros elementos deste array, vão os chamados grupos de captura.

Grupos de captura representam uma maneira de dividir o encontrado em partes separadas. Para usá-los é necessário colocar parte da expressão regular entre parênteses. Neste caso, no array de resultados, além da string encontrada, também aparecerá o que coube na parte da expressão regular que está entre esses parênteses.

Vamos tentar na prática. Suponha que temos uma string com um horário:

javascriptlet str = '12:34';

Vamos colocar as horas e os minutos deste horário em grupos de captura separados:

javascriptlet res = str.match(/(\d+):(\d+)/);

Vejamos o resultado:

javascriptconsole.log(res[0]); // '12:34' - o resultado completo
console.log(res[1]); // '12'    - 1º grupo de captura
console.log(res[2]); // '34'    - 2º grupo de captura
Задание 1

Dada uma string contendo um domínio:

javascriptlet str = 'sss domain.ru zzz';

Encontre este domínio e coloque seu nome no primeiro grupo de captura, e o TLD (domínio de topo) - no segundo.

Задание 2

Dada uma string contendo uma data:

javascriptlet str = '31.12.2025';

Coloque o dia no primeiro grupo de captura, o mês - no segundo, e o ano - no terceiro.