Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17392
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como usar o preg_replace PHP com expressões regulares

10-04-2015 18:30

Nesse post eu vou mostrar como usar o preg_replace para trocar alguns valores de tags.

Para isso vamos precisar conhecer algumas regras para a expressão:

([^\']*) = todos os valores
\\1 = primeiro valor ou \\2 segundo valor, etc.

Vou montar aqui um exemplo bem simples. Vamos supor que eu quero trocar todas as palavras que estiverem em negrito por itálico.

<?php $str = "<b>palavra</b>"; $str = preg_replace('#<b>([^\']*)</b>#U', '<i>\\1</i>', $str); echo $str; ?>

Como mostrado eu usei o que falei acima.

Usei ([^\']*) par obter todos os valores entre a tag b, e \\1 para exibir o primeiro valor.
Obs.: Iniciar com o hash # e terminar com o #U

Agora vamos supor que queremos trocar uma span com a class texto para uma div com a class texto. Segue um exemplo

<?php $str = "<span class=\"texto\">texto</span>"; $str = preg_replace('#<span class="([^\']*)">([^\']*)</span>#U', '<div class="\\1">\\2</div>', $str); echo $str; ?>

Note que agora eu usei o bloco de tudo duas vezes, uma para pegar o valor da class e outra o conteúdo do span.
Também usei o \\1 para repetir o valor da class e o \\2 para repetir o valor do span na div.
0
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum :rock:

Quem está online

Usuários navegando neste fórum: Bing [Bot]