PHP: ¿Cómo reemplazar palabras de una cadena?
De Foros del Web
Como bien sabemos, tenemos la función str_replace(), muy útil para reemplazos sencillos. Pero cuando necesitamos de más complejidad, debemos recurrir a las expresiones regulares.
Supongamos que tenemos la siguiente cadena:
"Esta es la formacion del ion"
Y queremos reemplazar la palabra "ion" por "anion". Si usamos str_replace() obtendremos algo asi:
"Esta es la formacanion del anion"
Para que eso no ocurra, debemos aplicar preg_replace() con la siguiente expresión regular:
Código PHP:
$resultado = preg_replace("/\bion(s)?\b/i", "anion", "Esta es la formacion del ion");
Y obtendremos lo que buscamos:
"Esta es la formacion del anion"
NOTA: La "i" que se encuentra después del slash indica "case insensitive".
--Takitei 11 Dic 2004
Este artículo es parte de las FAQs de PHP y el Manual de PHP.
- Indice de las FAQs: Conceptos, Configuración, Formularios, Manejo de Archivos, Integración con Bases de Datos, Sesiones, Extensiones y Librerías, Seguridad, Funciones, Clases y Objetos, Frameworks
- Recomendamos también: Guía Zend, Frameworks PHP, Aceleradores PHP
- Agregar al FAQ: PHP: Instrucciones para agregar una pregunta al FAQ de PHP
- Para preguntas sobre PHP: Foro de Php
