String de JavaScript - método replace ()

Descrição

Este método encontra uma correspondência entre uma expressão regular e uma string e substitui a substring correspondida por uma nova substring.

A string de substituição pode incluir os seguintes padrões de substituição especiais -

padronizar Inserções
$$ Insere um "$".
$ & Insere a substring correspondente.
$ ` Insere a parte da string que precede a substring correspondente.
$ ' Insere a parte da string que segue a substring correspondente.
$ n ou $ nn Onde n ou nn são dígitos decimais, insere o na string de submatch entre parênteses, desde que o primeiro argumento seja um objeto RegExp.

Sintaxe

A sintaxe para usar o método replace () é a seguinte -

string.replace(regexp/substr, newSubStr/function[, flags]);

Detalhes do argumento

  • regexp - A RegExpobjeto. A correspondência é substituída pelo valor de retorno do parâmetro # 2.

  • substr - Uma string que deve ser substituída por newSubStr.

  • newSubStr - A string que substitui a substring recebida do parâmetro nº 1.

  • function - Uma função a ser chamada para criar a nova substring.

  • flags - Uma string contendo qualquer combinação dos sinalizadores RegExp: g - correspondência global, i - ignorar caso, m- combinar em várias linhas. Este parâmetro é usado apenas se o primeiro parâmetro for uma string.

Valor de retorno

Ele simplesmente retorna uma nova string alterada.

Exemplo

Experimente o seguinte exemplo.

<html>
   <head>
      <title>JavaScript String replace() Method</title>
   </head>
   
   <body>   
      <script type = "text/javascript">
         var re = /apples/gi;
         var str = "Apples are round, and apples are juicy.";
         var newstr = str.replace(re, "oranges");        
         document.write(newstr ); 
      </script>      
   </body>
</html>

Resultado

oranges are round, and oranges are juicy.

Exemplo

Experimente o seguinte exemplo; mostra como trocar palavras em uma string.

<html>
   <head>
      <title>JavaScript String replace() Method</title>
   </head>
   
   <body>     
      <script type = "text/javascript">
         var re = /(\w+)\s(\w+)/;
         var str = "zara ali";
         var newstr = str.replace(re, "$2, $1");
         document.write(newstr);
      </script>   
   </body>
</html>

Resultado

ali, zara