PHP: Substituindo somente a primeira ocorrência de uma palavra na string

Publicado por Fábio Berbert de Paula em 10/10/2008

[ Hits: 15.571 ]

Blog: https://youtube.com/c/cotidianohackeado

 


PHP: Substituindo somente a primeira ocorrência de uma palavra na string



Essa dica é pra quem trabalha com PHP e precisa substituir somente a primeira ocorrência de uma palavra num string. Veja um exemplo:

<?
$paragrafo = "Agora você pode instalar o Big Linux ou a distro que preferir. Verifique se o CD do Linux já está no computador, ligue e faça dar o boot pelo CD do Linux.";
//substituir a primeira ocorrência da palavra Linux por <em>Linux</em>
$paragrafo = ereg_replace("Linux", "<em>Linux</em>", $paragrafo);
echo $paragrafo;
?>

A saída será:

Agora você pode instalar o Big <em>Linux</em> ou a distro que preferir. Verifique se o CD do <em>Linux</em> já está no computador, ligue e faça dar o boot pelo CD do <em>Linux</em>.

O ereg_replace() substitui TODAS as ocorrências da string. A solução para o problema é o uso da função preg_replace(). Para o exemplo acima funcionar, bastar substituir a ereg_replace() por:

$paragrafo = preg_replace("/Linux/", "<em>Linux</em>", $paragrafo, 1);

Espero ter ajudado!

Outras dicas deste autor

Lista de distribuições Live CD

Catálogo de efeitos de texto para Gimp

Teclas de atalho para navegação entre abas do navegador

Criando aplicativos multiplataforma (Android, iOS, Windows) com Python + Kivy

Sincronizando o seu Palm no Linux

Leitura recomendada

Entenda Expressões Regulares em PHP

Validando endereço de e-mail em PHP

Guia de Expressões Regulares

Utilizando o loop FOR em PHP

Separar palavras de uma string no PHP

  

Comentários
[1] Comentário enviado por leandromx em 28/10/2009 - 18:59h

Olá Fábio me diz uma coisa,
Se eu quiser mudar somente a seguda palavra linux como ficaria????

[2] Comentário enviado por fabio em 29/10/2009 - 10:43h

Olá Leandro,

Assim deve funcionar:

$paragrafo = preg_replace("/(Linux.*)(Linux)/", "$1<em>$2</em>", $paragrafo);

Um abraço.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts