В PHP удаление специальных символов из строк может быть распространенной задачей, особенно при работе с пользовательским вводом или внешними данными. Задача состоит в том, чтобы удалить все нежелательные символы, не изменяя при этом основные, такие как знаки препинания или пробелы.
Для решения этой проблемы обычно используются регулярные выражения. Однако при попытке удалить определенные специальные символы, сохранив другие, в выражение необходимо внести изменения.
Исходное выражение /[^a-zA-Z0-9_ -] /s эффективно удаляет все символы, кроме букв, цифр, подчеркиваний, пробелов или тире, но удаляет некоторые желательные символы, такие как круглые скобки, косая черта, точки и амперсанды.
Чтобы исправить это, мы должны экранировать точку и другие специальные символы, которые мы хотим сохранить. Скорректированное выражение выглядит следующим образом:
/[^a-zA-Z0-9_ %\[\]\.\(\)%&-]/s
Чтобы использовать это регулярное выражение в PHP, замените исходный код на следующее:
Примечание. Модификатор s в регулярном выражении означает, что он должен работать с многострочными строками.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3