Como substituir todas as substringas em uma string usando o método de substituição?

Como substituir todas as substringas em uma string usando o método de substituição?
As operações de string são uma das características mais importantes de uma linguagem de programação. Atualmente, autorizando senhas para confirmar endereços de email válidos, verificar o formato de um endereço postal e verificar o número de dígitos em um número de telefone é feito com a ajuda de operações de string.

Existem inúmeros métodos de operação de cordas disponíveis no JavaScript, cada um com seus próprios benefícios de uso e seus determinantes. Um desses métodos é o .substituir() método.

Qual é o método substituto ()?

Como o nome indicava, o .substituir() substitui uma string ou parte de uma string (substring) por outra string.

A sintaxe do .substituir() O método é bastante simples:

corda.substituir (valuetosearchfor, valuetoreplacewith);

Há um fator único sobre o .substituir() método, e está presente em sua sintaxe. Então, vamos explicar a sintaxe.

  • corda: A string cuja substring deve ser alterada.
  • valuetosEarhfor: Uma substring ou um regex para combinar com a "string" contra.
  • ValuEtorplaceWith: Nova substring que substituirá a antiga.
  • Valor de retorno: Uma string com a substring modificada.

Exemplo

Um exemplo simples do .substituir() o método seria como:

String = "Hello World, Welcome to Linuxhint";
console.log (string);
newstring = string.substituir ("mundo", "programadores");
console.log (newstring);

O que estamos fazendo aqui é que estamos criando uma variável “corda”E dando a ele algum valor textual que é“ Hello World, Welcome to Linuxhint ”. Queremos substituir a substring “mundo” por “programadores”, por isso criamos uma nova variável e o chamamos de “Newstring” e passamos o valor retornado do .substituir() método. Finalmente, temos o console.registro() Para imprimir os valores de ambas as variáveis.

Saída

Como podemos ver, a variável “Newstring” tem a string atualizada dentro dela.

Como usar o regex em .Método Substituir ()

E se quisermos procurar várias instâncias da mesma string? E se nossa string for assim:

String = "Mat marrom, mesa marrom, cadeira marrom, caneca marrom";

E queremos substituir todas as substringas "marrons" por "azul". Vamos tentar usar o método que aprendemos acima.

String = "Mat marrom, mesa marrom, cadeira marrom, caneca marrom";
newstring = string.substituir ("marrom", "azul");
console.log (newstring);

A saída é:

A saída é:

Não é isso que queríamos. Então, o que deu errado? Bem, nada deu errado. A maneira como a .O método substituído () funciona é que ele encontra a primeira instância da substring, substitui -a e para de executar. Então, se queremos verificar se há várias instâncias, temos que usar Regex com a bandeira global "G". Saiba mais sobre Regex em JavaScript.

Agora, vamos usar regex no primeiro argumento do substituir() método em vez de uma substring normal, como:

String = "Mat marrom, mesa marrom, cadeira marrom, caneca marrom";
newstring = string.substituir (/marrom/g, "azul");
console.log (newstring);

Como você pode ver na imagem abaixo, substituímos o primeiro argumento de uma substring para uma expressão regular com a bandeira global “g”. A saída agora é:

Temos exatamente o que queríamos. Mas ainda há algo faltando, e é o caso em que as múltiplas instâncias da mesma substring são diferentes de caso. Imagine a mesma corda de cima, mas com pequenas mudanças como esta:

String = "Mat marrom, mesa marrom, cadeira marrom, caneca marrom";

Agora, como você pode ver, a substring que queremos substituir "Brown" tem duas versões sensíveis ao caso diferentes, uma começando com a letra maiúscula "B" e a outra começando com a letra inferior "B". Se usarmos o regex normal com a bandeira global “g" igual a:

String = "Mat marrom, mesa marrom, cadeira marrom, caneca marrom";
newstring = string.substituir (/marrom/g, "azul");
console.log (newstring);

Temos a seguinte saída:

Estamos analisando várias instâncias, mas nosso método de pesquisa é maiúsculas e minúsculas. Para mudar para Isensível ao caso Podemos usar o Bandeira “eu” juntamente com o Bandeira global “G” como:

newstring = string.substituir (/marrom/gi, "azul");

Quando estamos usando esta instrução em vez da antiga, obtemos a seguinte saída;

Conclusão

Em JavaScript, podemos substituir uma substring de um valor de string usando o .substituir() método. O .substituir() O método leva dois argumentos, sendo o primeiro a substring ou uma expressão regular e a segunda é a substring que substituirá as substâncias antigas. Aprendemos qual é a sintaxe do .substituir() método e qual é o seu tipo de retorno. Além disso, usamos o .substituir() Método em diferentes exemplos usando a substring e expressões regulares para procurar possíveis correspondências em uma string e até passamos por bandeiras diferentes ao usar expressões regulares.