Cómo eliminar caracteres especiales de una cadena en PHP

How Remove Special Characters From String Php



A veces, es posible que deba eliminar caracteres especiales de una cadena para fines de programación. PHP tiene muchas funciones integradas que se pueden usar para eliminar caracteres especiales de los datos de cadenas. Este tutorial le muestra cómo usar algunos tipos diferentes de funciones integradas de PHP para eliminar caracteres especiales de una cadena.

La función str_replace ()

Una función útil que se puede utilizar para eliminar caracteres especiales de una cadena es la str_replace () función. La cadena vacía debe usarse para reemplazar el carácter en esta función para eliminar el carácter especificado. La sintaxis de esta función se proporciona a continuación.







str_replace ($ search_str, $ replace_str, $ main_str [,$ count ])

los str_replace () La función puede tomar cuatro argumentos. Los primeros tres argumentos son obligatorios y el último argumento es opcional. los $ search_str La variable almacena el valor que se buscará en la cadena. los $ replace_str La variable almacena el valor que será reemplazado de la cadena donde coincide el texto de búsqueda. Debe utilizar una cadena vacía como valor del $ replace_str variable para eliminar el texto de búsqueda de la cadena principal. los $ count El argumento almacena un valor que representa cuántos caracteres se reemplazan o eliminan.



Ejemplo: usar str_replace () eliminar caracteres especiales

El siguiente script muestra el uso de la str_replace () función para eliminar un carácter especial de una cadena de datos. Una función definida por el usuario se declara en el script para realizar la tarea de reemplazo. los hash (#), comillas simples (‘) y punto y coma (;) los caracteres se utilizan como caracteres de búsqueda, mientras que la cadena vacía se utiliza como texto de reemplazo para estos caracteres.





/ * El siguiente script eliminará algunos

caracteres especiales de una cadena usando str_replace ()

función

*/




// Definir la cadena principal

$ mainstr = '#Este es un texto simple;';



// La salida antes de eliminar

echo ' Texto antes de eliminar:
'
.$ mainstr;



// Llamar a la función

$ reemplazatr =rm_special_char($ mainstr);



// Definir la función para eliminar el carácter espacial

funciónrm_special_char($ str) {

// Eliminar '#', '' 'y'; ' usando la función str_replace ()

$ resultado = str_replace ( formación ('#', ''', ';'), '', $ str);

// La salida después de eliminar

echo '
Texto después de eliminar:
'
.$ resultado;

}

?>

Producción





La siguiente salida aparecerá después de ejecutar la secuencia de comandos proporcionada anteriormente. El valor del texto principal se imprime antes de llamar al str_replace () función, y los tres caracteres especiales se eliminan del texto principal y se imprimen más tarde.



La función preg_replace ()

los preg_replace () La función se utiliza para reemplazar los datos de cadena según el patrón de búsqueda. La sintaxis de esta función se proporciona a continuación.

preg_replace ( $ patrón, $ reemplazar, $ cadena [,$ límite [,$ count]] )

Esta función puede tomar cinco argumentos. Los primeros tres argumentos son obligatorios y los dos últimos argumentos son opcionales. los $ patrón El argumento se utiliza para definir el patrón para buscar los caracteres en una cadena. los $ reemplazar El argumento se usa para definir el texto de reemplazo, y el texto de reemplazo será una cadena vacía que se usará para eliminar los caracteres especiales. los $ cadena El argumento se utiliza para definir la cadena principal en la que se buscará y reemplazará el patrón.

Ejemplo: uso de preg_replace () para eliminar caracteres especiales

El siguiente script muestra el uso de la preg_replace () función para eliminar un carácter especial particular de los datos de la cadena. El patrón '[0-9 / [0-9% $?] / S' se utiliza en la función para buscar los caracteres. Esto buscará todos los caracteres '%', '$' y '?' En los datos de la cadena y reemplazará estos caracteres con la cadena vacía si los caracteres existen.



/ * El siguiente script eliminará algunos

caracteres especiales de una cadena usando preg_replace ()

función

*/




// Definir la cadena principal

$ mainstr = '200 me gusta$ phpprogramación50% ?. ';



// La salida antes de eliminar

echo ' Texto antes de eliminar:
'
.$ mainstr;



// Llamar a la función

$ reemplazatr =rm_special_char($ mainstr);



// Definir la función para eliminar el carácter espacial

funciónrm_special_char($ str) {

// Eliminar '#', '' 'y'; ' usando la función str_replace ()

$ resultado = preg_replace ('/ [0-9% $?] / S','', $ str);

// La salida después de eliminar

echo '
Texto después de eliminar:
'
.$ resultado;

}

?>

Producción

La siguiente salida aparecerá después de ejecutar el script. El valor del texto principal se imprimirá antes de llamar al preg_replace () función. los 200, 50, '%' y '?' los caracteres se eliminarán del texto principal y se imprimirán más tarde.

los htmlspecialchars () y str_ireplace () Funciones

los htmlspecialchars () y str_ireplace () Las funciones se utilizan para convertir todos los caracteres predefinidos en HTML. Por ejemplo, ' < 'Se convertirá en' & lt ,’ ‘ & 'Se convertirá en' &erio , ’Etc. Puede utilizar estas funciones para eliminar el efecto de cualquier carácter predefinido de los datos de la cadena.

Ejemplo: usar htmlspecialchars () y str_ireplace () eliminar caracteres especiales

La siguiente secuencia de comandos muestra cómo eliminar el efecto de caracteres predefinidos de una cadena utilizando el htmlspecialchars () función. Entonces el str_ireplace () La función se utiliza para eliminar las entidades HTML del texto. los str_ireplace () La función funciona como la str_replace () función, pero puede realizar búsquedas que no distinguen entre mayúsculas y minúsculas. La cadena principal contiene texto con< h2 > y< b > etiquetas. Entonces, cuando el texto se imprime antes de eliminar el efecto de los caracteres predefinidos, la cadena se mostrará con el efecto del encabezado HTML y las etiquetas en negrita. El texto sin formato se mostrará después de aplicar las funciones dadas.





// Definir la cadena principal

$ mainstr = '

Bienvenido a LinuxHint

'
;



// La salida con etiquetas HTML

echo 'Texto antes de eliminar:'.$ mainstr;



// La salida después de eliminar las etiquetas HTML

echo 'Texto después de eliminar:
'
.

str_ireplace ( formación (' ', ' '
,'

','

'
),'',

htmlspecialchars ($ mainstr));



?>

Producción

La siguiente salida aparecerá después de ejecutar el script.

La función trim ()

los función recortar () se utiliza para eliminar caracteres específicos del comienzo y el final de una cadena de datos. Esta función no puede eliminar caracteres en medio de una cadena de datos. Por lo tanto, puede usar esta función solo si desea eliminar caracteres especiales del principio y el final de una cadena.

Ejemplo: usar el Función trim () eliminar caracteres especiales

El siguiente script muestra el uso de la función recortar () para eliminar el ' @ ' y ' ! 'Caracteres desde el principio y el final de la variable de cadena $ mainstr . El valor de la $ mainstr La variable se imprimirá antes y después de eliminar los caracteres.





// Definir la cadena principal

$ mainstr = '@@ Programación Web !!!.';



// La salida antes de usar trim ()

echo ' Texto antes de eliminar:
'
.$ mainstr;



// La salida después de usar trim ()

echo '
Texto después de eliminar:
'
. podar ($ mainstr,'@!');



?>

Producción

La siguiente salida aparecerá después de ejecutar el script. Aquí, dos ' @ 'Los caracteres se eliminan del principio, y tres' ! 'Los caracteres se eliminan del final de la variable de cadena $ mainstr .

Conclusión

Este tutorial le mostró cuatro formas diferentes de eliminar caracteres especiales de los datos de cadenas. Espero que este tutorial ayude a los lectores a aplicar las funciones proporcionadas en este artículo en su script.