«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как удалить определенные специальные символы, сохранив другие в строках PHP с помощью регулярных выражений?

Как удалить определенные специальные символы, сохранив другие в строках PHP с помощью регулярных выражений?

Опубликовано 8 ноября 2024 г.
Просматривать:549

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

PHP: удаление специальных символов из строк

В PHP удаление специальных символов из строк может быть распространенной задачей, особенно при работе с пользовательским вводом или внешними данными. Задача состоит в том, чтобы удалить все нежелательные символы, не изменяя при этом основные, такие как знаки препинания или пробелы.

Для решения этой проблемы обычно используются регулярные выражения. Однако при попытке удалить определенные специальные символы, сохранив другие, в выражение необходимо внести изменения.

Скорректированное регулярное выражение

Исходное выражение /[^a-zA-Z0-9_ -] /s эффективно удаляет все символы, кроме букв, цифр, подчеркиваний, пробелов или тире, но удаляет некоторые желательные символы, такие как круглые скобки, косая черта, точки и амперсанды.

Чтобы исправить это, мы должны экранировать точку и другие специальные символы, которые мы хотим сохранить. Скорректированное выражение выглядит следующим образом:

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

  • Уберите точку с помощью \. для соответствия буквальной точке.
  • Включите дополнительные символы в квадратные скобки [ ] для их явного соответствия.
  • Избегайте других специальных символов, таких как круглые скобки (), косая черта / и амперсанд &, чтобы сохранить их. .

Реализация

Чтобы использовать это регулярное выражение в PHP, замените исходный код на следующее:

Примечание. Модификатор s в регулярном выражении означает, что он должен работать с многострочными строками.

Заявление о выпуске Эта статья перепечатана по адресу: 1729138097. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3