"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo eliminar caracteres especiales específicos y conservar otros en cadenas PHP utilizando expresiones regulares?

¿Cómo eliminar caracteres especiales específicos y conservar otros en cadenas PHP utilizando expresiones regulares?

Publicado el 2024-11-08
Navegar:961

How to Remove Specific Special Characters While Preserving Others in PHP Strings Using Regular Expressions?

PHP: Eliminar caracteres especiales de cadenas

En PHP, eliminar caracteres especiales de cadenas puede ser una tarea común, especialmente cuando se trabaja con entradas del usuario o datos externos. El desafío es eliminar todos los caracteres no deseados sin alterar los esenciales como la puntuación o los espacios.

Para solucionar este problema, se suele utilizar una expresión regular. Sin embargo, al intentar eliminar caracteres especiales específicos y conservar otros, se requieren modificaciones en la expresión.

Expresión regular ajustada

La expresión original /[^a-zA-Z0-9_ -] /s elimina efectivamente todos los caracteres que no son letras, números, guiones bajos, espacios o guiones, pero elimina algunos caracteres deseables como paréntesis, barras diagonales, puntos y símbolos.

Para rectificar esto, debemos escapar del punto y otros caracteres especiales que queramos conservar. La expresión ajustada es la siguiente:

/[^a-zA-Z0-9_ %\[\]\.\(\)%&-]/s

  • Escapa del punto con \. para que coincida con un punto literal.
  • Incluya caracteres adicionales entre corchetes [ ] para que coincidan explícitamente.
  • Escape otros caracteres especiales como paréntesis (), barras diagonales / y signo comercial & para conservarlos .

Implementación

Para usar esta expresión regular en PHP, reemplace su código original con lo siguiente:

Nota: El modificador s en la expresión regular significa que debería funcionar en cadenas multilínea.

Declaración de liberación Este artículo se reimprime en: 1729138097 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3