Vamos con un tutorial muy sencillo que va a ahorrarte tiempo seguro. Simplemente vamos a eliminar los paréntesis y su contenido de una cadena, por supuesto, en PHP. Que conste que no tenemos nada en su contra, pero en ocasiones es una acción útil para limpiar contenido y ordenarlo de una forma más racional y, por tanto, seoística.
Para eliminar los paréntesis y su contenido sólo hace falta usar una expresión regular que encuentre los paréntesis y sustituirlo todo por un vacío, es decir ”. Para esto utilizamos la función de php preg_replace.
Código para eliminar paréntesis
Este sería el código resultante:
preg_replace("/\((.*?)\)/i", "", $cadenaOriginal);
El primer valor es la expresión regular que selecciona todas las repeticiones de lo que buscamos, en este caso unos paréntesis y lo que sea que haya dentro; el segundo valor contiene la cadena original de la que queremos quitar los paréntesis.
Por ejemplo, si le introdujéramos la cadena: “No hay lugar mejor que mi casa (salvo las casas ajenas con wifi gratis) para plantar un pino)”
Obtendríamos: “No hay lugar mejor que mi casa para plantar un pino)”
Sencillo, ¿verdad?
Bonus track, eliminar corchetes, comillas y otros signos
Para eliminar corchetes, comillas (tanto simples como dobles) y otros caracteres por algún motivo indeseables lo único que tenemos que hacer es modificar la expresión regular, estos serían los ejemplos más comunes:
Eliminar corchetes y su contenido
preg_replace("/\[(.*?)\]/i", "", $cadenaOriginal);
Eliminar el texto entrecomillado
preg_replace("/\"(.*?)\"/i", "", $cadenaOriginal);
El uso que le quieras dar ya es cosa tuya, por poner un ejemplo, hace unas semanas decidí reestructurar una web de frases que tengo desde hace años y que estaba abandonada. La estructura de las frases contenía al autor entre paréntesis, para mejorar la indexación de dicho sitio web preparé un script que tomaba el autor de cada una de las frases usando expresiones regulares como esta y convertía su nombre en una taxonomía personalizada de WordPress, con lo que al final quedó el contenido mucho mejor ordenado. Es un ejemplo de uso.
Y así se podría hacer con lo que quisiéramos.
De nada.
1 comment for “Eliminar paréntesis y su contenido en PHP”