Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cil

[Resolvido] str_replace - Subistituir palavras de um texto e deixa-las em negrito

Recommended Posts

	<?php
	$esta_no_texto = array("preto", "azul", "arroz", "refrigerante");
	$entra_no_texto = array("branco", "verde","feijão", "suco");
	$frase = "um terno preto e uma calça azul - comendo arroz e tomando refrigerante";

	$mudar = str_replace($esta_no_texto, $entra_no_texto, $frase );
	
			echo "$mudar";
		
	?>

Boa noite a todos,
Qual seria a melhor maneira de ficar em negrito as palavras que foram subsistidas pela função str_replace. Levando em conta que pode ser um texto com milhares de palavras, seria cansativo de mais colocar a tag <strong>em cada uma delas na variável. Obrigado.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que exatamente você quer deixar em negrito e quando?

[]s.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite!

$esta_no_texto = array("preto", "azul", "arroz", "refrigerante");
$entra_no_texto = array("branco", "verde","feijão", "suco");

$entra_no_texto = array_map(function($palavra) {
	return sprintf('<strong> %s </strong>', $palavra);
}, $entra_no_texto);

$frase = "um terno preto e uma calça azul - comendo arroz e tomando refrigerante";
$mudar = str_replace($esta_no_texto, $entra_no_texto, $frase);

echo $mudar;

Sera exibido:

um terno branco e uma calça verde - comendo feijão e tomando suco

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, EdCesar disse:

Boa noite!


$esta_no_texto = array("preto", "azul", "arroz", "refrigerante");
$entra_no_texto = array("branco", "verde","feijão", "suco");

$entra_no_texto = array_map(function($palavra) {
	return sprintf('<strong> %s </strong>', $palavra);
}, $entra_no_texto);

$frase = "um terno preto e uma calça azul - comendo arroz e tomando refrigerante";
$mudar = str_replace($esta_no_texto, $entra_no_texto, $frase);

echo $mudar;

Sera exibido:

um terno branco e uma calça verde - comendo feijão e tomando suco

Resolvido
Exatamente isso que eu quero EdCesar, muito obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por matheusdsanjos
      Olá pessoal, estou desenvolvendo uma loja virtual e cadastrei os produtos de meu desejo em uma tabela dentro de um banco de dados com MySQL para depois mostrar todos automaticamente na página, dentro da tabela produtos no atributo preço cadastrei tudo desta maneira: "9.90", mas agr que fiz aparecer tudo na página todos os preços estão aparecendo com ponto e quero mudar isso para o preço aparecer com vírgula assim: "9,90", mas só aparecer para na página mesmo e quero que no banco de dados continue com ponto.
       
      Expliquei de um jeito sem muitos termos técnicos, desculpem-me se está de um jeito difícil de  entender.
       
      Se alguém puder me ajudar, agradeço!

    • Por Julio Cavallari
      Estou com um problema para usar o str_replace da maneira mais otimizada possível.
       
      function replaceNotas($nota){ $notas = [ 1 => "C", 2 => "C#", 3 => "Db", 4 => "D", 5 => "D#", 6 => "Eb", 7 => "E", 8 => "F", 9 => "F#", 10 => "Gb", 11 => "G", 12 => "G#", 13 => "Ab", 14 => "A", 15 => "A#", 16 => "Bb", 17 => "B", ]; $replaceNotas = [ 1 => "&C&", 2 => "&C#&", 3 => "&Db&", 4 => "&D&", 5 => "&D#&", 6 => "&Eb&", 7 => "&E&", 8 => "&F&", 9 => "&F#&", 10 => "&Gb&", 11 => "&G&", 12 => "&G#&", 13 => "&Ab&", 14 => "&A&", 15 => "&A#&", 16 => "&Bb&", 17 => "&B&", ]; $nota = str_replace($notas, $replaceNotas, $nota); return $nota; } A função basicamente recebe uma string com as notas, precisa colocar essas notas entre "&"
      A notas "comuns", sem símbolos está funcionando corretamente, o problema é que as com símbolos a função coloca somente a nota entre "&". Ex: Tenho a nota "C#", o que eu quero é que fique "&C#&" porém a função primeiro substitui somente o "C", ignorando o símbolo. O que será que eu teria que fazer para que a substituição ocorresse normalmente? Eu preciso que cada index da array $notas seja substituído somente pelo mesmo index da array $replaceNotas.
    • Por LeftGame
      Kk eae guys, eu estava codando um pouco pra testar meus conhecimentos php super avançados :v (mentira, comecei a aprender PHP a 1 semana) e me deparei com uma nova syntax do PHP...str_replace, gostaria de substituir uma quebra de linha por outra quebra de linha com uma vírgula por exemplo:
      Bom dia
      Que legal

      Ficaria:
      Bom dia
      ,Que legal
       
      if (!empty($_POST["code"])) { $code=$_POST['code']; $codesolved=str_replace(PHP_EOL,PHP_EOL'>', $code); echo "$codesolved"; }  
    • Por Eliseu Filipi
      Olá
      Eu tenho um php com um array:
      <?php $id = trim($_GET['%']); $Lista = array( 'usuario1'=>array('validade'=> '03/05/15', 'licencas'=> '1', 'ativado'=>'true'), 'usuario2'=>array('validade'=> '03/05/15', 'licencas'=> '1', 'ativado'=>'false') ); if(array_key_exists($id,$Lista)){ If($Lista[$id]['ativado'] = 'false'){ echo "Usuário foi ativado" . "\n"; // ativar/renomear e salvar } ?> Se o nome informado é encontrado no array então verifica se está ou não ativado ('true').
      Caso não esteja ("false") então ativa, renomeando para "true" e salva.
      Já tentei usar 'str_replace ' mas não consegui salvar.
      Além disso pode-se haver uma verificação simultânea, ou seja, mais de um usuário pode verificar e não deve causar conflitos.
      Só por favor, nada de banco de dados, preciso PHP.
      Desde já agradeço.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.