str ireplace () con mantenimiento del caso
¿Cómo puedo usar str_ireplace (o algo similar) para reemplazar algún texto para formatear y luego devolverlo con las mismas mayúsculas?
Ejemplo:
$original="The quick red fox jumps over the lazy brown dog.";
$find="thE";
print str_ireplace($find,'<b>'.$find.'</b>',$original);
Que producirá: El zorro rojo rápido salta sobre el perro marrón perezoso.
Quiero que mantenga el caso original y solo aplique el formato, en este ejemplo, texto en negrita.
Gracias.
26
2 answers
$original = "The quick red fox jumps over the lazy brown dog.";
$new = preg_replace("/the/i", "<b>\$0</b>", $original);
Da " Elzorro rojo rápido salta sobre el perro marrón perezoso."Si desea hacer coincidir palabras específicas, puede agregar límites de palabras: preg_replace('/\bthe\b/i', ...
.
Si desea parametrizar el reemplazo, puede usar preg_quote
:
preg_replace('/\b' . preg_quote($word, "/") . '\b/i', "<b>\$0</b>", $original);
39
Author: Artefacto,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-15 23:54:31
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-15 23:54:31
O bien reemplazar con la palabra exacta, o utilizar preg_replace:
preg_replace('/(The)/i', "<strong>$1</strong>", $original);
2
Author: mhitza,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-15 23:58:12
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-08-15 23:58:12