JS-0902 - JavaScript Completo ES6 - Regexp: substituição

JS-0902 - JavaScript Completo ES6 - Regexp: substituição
Publicado em 08/06/2021 15h51
Visualizações: 789

Funções especiais para realizar substituição

Ainda sobre expressões regulares, por vezes será necessário manter a referência de uma seleção para operar sobre esta sem perder o valor anterior a uma substituição. Para isto pode ser utilizado cifrão e "e" comercial ("$&") para a referenciação da seleção. Ex:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

No exemplo acima, o valor "Java" da seleção foi mantido e utilizado para a composição do termo substituto.

Grupo de Captura

O grupo de captura, referenciado na postagem anterior, através da utilização dos parênteses como caracteres especiais. Eles podem ser definidos de formas variadas e tem a capacidade de segmentar grupos de seleção, utilizando parênteses para envolver os parâmetros da regex de um grupo. Este grupo é utilizado através de uma referência sinalizada pelo uso de cifrão e índice da seleção ("$n"), onde "n" é a ordem. Ex:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Para selecionar elementos repetidos, basta utilizar o sinal de adição após um termo envolvido por parênteses, pois se não fossem utilizados, o último caractere seria interpretado com elemento repetido pela regex. Ex:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Para ignorar um grupo de captura é utilizado o ponto de interrogação seguido de dois pontos ("?:") dentro da seleção. No exemplo a seguir, o primeiro grupo do CPF foi ignorado e o primeiro índice passou para o grupo seguinte:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Positive Lookahead

O positive lookahead faz a seleção de termos a frente do sinal composto de interrogação e sinal de igual ("?="), utilizando parênteses, que nesse caso, não captura grupo. No exemplo a seguir, todos os três dígitos encontrados que contenham ponto ou hífen a sua frente, serão substituídos por asterisco.

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Negative Lookahead

A negação do item anterior, negative lookahead, se faz com o uso de exclamação no lugar do sinal de igual. No exemplo a seguir, somente caracteres que não possuírem ponto ou hífen a sua frente serão substituídos:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Positive Lookbehind

Como o nome retrata, realiza a seleção baseada no que esta atrás do termo passado, utilizando interrogação e o sinal de menor ou igual ("?<="), tendo como negação o uso de exclamação no lugar do sinal de igual. Ex:

JS-0902 - JavaScript Completo ES6 - Regexp: Substituição

Veja também:

Confira mais artigos relacionados

Este website utiliza cookies próprios e de terceiros a fim de personalizar o conteúdo, melhorar a experiência do usuário, fornecer funções de mídias sociais e analisar o tráfego. Para continuar navegando você deve concordar com nossa Política de Privacidade

Sim, eu aceito. Não, eu não aceito.