Aprenda a substituir parte de uma string no PHP

Veja como substituir parte de uma string no PHP utilizando diferentes funções nativas para manipulação de texto.

Como substituir parte de uma string no PHP?

Substituir partes de uma string é uma operação comum na programação PHP. Podemos realizar essa tarefa de diversas formas, dependendo da necessidade específica. As funções mais utilizadas são str_replace(), substr_replace() e preg_replace().

Substituindo texto com str_replace()

A função str_replace() substitui todas as ocorrências de uma palavra ou caractere dentro de uma string:

<?php
$texto = "O PHP é uma linguagem incrível";
$novoTexto = str_replace("PHP", "JavaScript", $texto);
echo $novoTexto;
?>

Saída:

O JavaScript é uma linguagem incrível

Aqui, PHP foi substituído por JavaScript em toda a string.

Substituindo parte da string com substr_replace()

Se precisarmos substituir um trecho específico de uma string, podemos usar substr_replace():

<?php
$texto = "Aprender PHP é essencial";
$novoTexto = substr_replace($texto, "JavaScript", 9, 3);
echo $novoTexto;
?>

Aqui, o trecho começando no índice 9 por 3 caracteres foi substituído por JavaScript.

Substituindo usando expressões regulares com preg_replace()

Se precisarmos substituir padrões complexos, preg_replace() é a melhor opção:

<?php
$texto = "Contato: email@exemplo.com";
$novoTexto = preg_replace("/[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}/i", "[email protegido]", $texto);
echo $novoTexto;
?>

Aqui, qualquer e-mail presente na string será substituído por [email protegido].

A substituição de strings no PHP permite desde pequenas alterações de texto até manipulações avançadas com expressões regulares. Dependendo do cenário, str_replace() é ideal para trocas diretas, substr_replace() para mudanças em posições específicas e preg_replace() para padrões mais elaborados. Escolher a função correta melhora a eficiência e clareza do código.

Algumas aplicações:

  • Correção e reformatação de textos dinâmicos
  • Remoção de informações sensíveis antes de exibição
  • Filtragem e sanitização de dados de entrada
  • Geração de URLs amigáveis a partir de strings

Dicas para quem está começando

  • Use str_replace() para trocas simples e diretas dentro de uma string.
  • Para substituir apenas em uma posição específica, prefira substr_replace().
  • Se precisar substituir padrões complexos, preg_replace() é a melhor opção.
  • Teste suas expressões regulares no site https://regex101.com antes de aplicá-las.
  • Evite substituições desnecessárias para otimizar o desempenho do código.

Contribuições de Daniel Moreira

Compartilhe este tutorial: Como substituir parte de uma string no PHP?

Compartilhe este tutorial

Continue aprendendo:

Como unir um array em uma string no PHP?

Veja como unir os elementos de um array em uma string no PHP utilizando a função implode() e outras técnicas úteis.

Tutorial anterior

Como verificar se uma string contém outra no PHP?

Veja como verificar se uma string contém outra no PHP utilizando diferentes funções nativas para manipulação de texto.

Próximo tutorial