Grupos, capturas e substituição
Capture partes do texto com grupos, use grupos nomeados, percorra todas as correspondências e faça substituições seguras com referências retroativas ou uma função
Grupos, capturas e substituição é uma aula grátis de JavaScript Academy no CoddyKit. Esta é a aula 2 de 3. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de JavaScript Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de JavaScript Academy inclui 3 aulas no total.
Por que usar grupos?
Objetivo: extrair e reorganizar texto.
- Grupos de captura: (...)
- Grupos nomeados: (?<name>...)
- matchAll para percorrer todos os resultados
- replace com $1 ou uma função

Grupos numerados
Use (...) para capturar partes. Acesse-as pelo índice: m[1], m[2], ...
// Capture YYYY-MM-DD into groups
const r = /(\\d{4})-(\\d{2})-(\\d{2})/;
const m = r.exec("Today: 2025-09-26");
if (m) {
console.log("year:", m[1], "month:", m[2], "day:", m[3]);
} else {
console.log("no match");
}

Grupos nomeados
Grupos nomeados adicionam chaves legíveis por meio de m.groups.name.
// Named groups make code clearer
const rx = /(?<y>\\d{4})-(?<m>\\d{2})-(?<d>\\d{2})/;
const hit = rx.exec("Release 2024-01-05");
if (hit) {
console.log("y:", hit.groups.y, "m:", hit.groups.m, "d:", hit.groups.d);
}

Iterar sobre correspondências
matchAll retorna um iterador; use-o com g para percorrer cada correspondência e ler os grupos.
// matchAll with the g flag to get every match and groups
const text = "IDs: A-12, B-7, C-300";
const pattern = /([A-Z])-(\\d+)/g;
for (const match of text.matchAll(pattern)) {
console.log("letter:", match[1], "num:", match[2]);
}

Substituir com grupos
replace pode usar $1, $2 ou uma função de retorno para criar o novo texto.
// Replace order: "2025-09-26" -> "26/09/2025"
const date = "2025-09-26";
// With backreferences
const swapped1 = date.replace(/(\\d{4})-(\\d{2})-(\\d{2})/, "$3/$2/$1");
console.log("swap1:", swapped1);
// With a function for more control
const swapped2 = date.replace(/(?<y>\\d{4})-(?<m>\\d{2})-(?<d>\\d{2})/, function (_all, _y, _m, _d, groups) {
return groups.d + "/" + groups.m + "/" + groups.y;
});
console.log("swap2:", swapped2);

Dicas e armadilhas
Dicas:
- Adicione g quando precisar de todas as correspondências (use matchAll).
- Prefira grupos nomeados para facilitar a compreensão.
- Mantenha os padrões pequenos; teste-os em cadeias de exemplo curtas.

Quiz sobre o básico de matchAll
Verificação rápida: itere sobre todas as correspondências com grupos.

Recapitulação
Recapitulação: capture com (...), use grupos nomeados para facilitar a compreensão, percorra todas as correspondências com matchAll e reorganize o texto usando replace com referências retroativas ou uma função de retorno.

Perguntas Frequentes
A aula “Grupos, capturas e substituição” é grátis?
Sim — o texto completo de “Grupos, capturas e substituição” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de JavaScript Academy, atualize para CoddyKit PRO. O curso de JavaScript Academy inclui 3 aulas no total.
O que vou aprender em “Grupos, capturas e substituição”?
Capture partes do texto com grupos, use grupos nomeados, percorra todas as correspondências e faça substituições seguras com referências retroativas ou uma função Você pratica JavaScript Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar JavaScript Academy?
Nenhuma experiência prévia é necessária. JavaScript Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 3.
Quanto tempo leva a aula “Grupos, capturas e substituição”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de JavaScript Academy?
Sim. Cada aula de JavaScript Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Fundamentos de expressões regulares — literais, test, âncoras e sinalizadores
- Grupos, capturas e substituição
- Validação e pequenas armadilhas