As expressões regulares são incrivelmente poderosas, mas podem ser difíceis de manter. Elas são uma habilidade que se aprende no trabalho e, quando os engravatados passam, fazem com que o senhor pareça incrivelmente inteligente se tiver algumas na tela. Como podemos resolver o problema da manutenção? Com grupos de correspondência, como Addy Osmani me explicou na semana passada:

Veja o ?<descriptor> com o padrão descriptor sendo um nome significativo que o senhor deseja atribuir a um determinado grupo. Com o uso do grupo, o senhor pode lidar de forma mais inteligente com os resultados da correspondência:

const re = /(?\d{4})-(?\d{2})-(?\d{2})/;
const result = re.exec('2021-04-26');

// Deconstructing from result.groups
const { year, month, day } = result.groups;

// Using array syntax
const [, year, month, day] = result;

A única desvantagem real de usar essa estratégia é que a maioria dos desenvolvedores provavelmente não sabe disso. O senhor também pode reclamar que isso torna a expressão regular mais longa. No entanto, no final das contas, a facilidade de manutenção é o que manda, e eu adoro o fato de a Addy ter compartilhado essa dica conosco!