Я пытаюсь удалить лишние пробелы из строки следующим образом:
Привет мир
- Как реализовать алгоритм распределения мест для юниоров
- Как я могу обновить две таблицы в одном запросе?
- Автозаполнение JQuery из базы данных
- Каков правильный способ загрузки файла с помощью CUploadedFile
- Пропустить URL-адрес в качестве параметра для XSL
- Лучший способ получить размер файла, превышающий 2 ГБ в php?
в
Привет мир
Кто-нибудь знает, как это сделать в PHP?
С регулярным выражением:
preg_replace('/( )+/', ' ', $string);
Если вы также хотите удалить все несколько белых символов, вы можете использовать \ s (\ s – белые символы)
preg_replace('/(\s)+/', ' ', $string);
$str = 'Why do I have so much white space?'; $str = preg_replace('/\s{2,}/', ' ', $str); var_dump($str); // string(34) "Why do I have so much white space?"
Видеть это!
Вы также можете использовать квантификатор +
, поскольку он всегда заменяет его , Однако я нахожу
{2,}
чтобы показать ваше намерение более ясным.
Существует пример того, как разрезать лишние пробелы в документации preg_replace
Не эксперт по PHP, но его звуки как работа для REGEX ….
<?php $string = 'Hello World and Everybody!'; $pattern = '/\s+/g'; $replacement = ' '; echo preg_replace($pattern, $replacement, $string); ?>
Опять же, PHP не мой язык, но идея состоит в том, чтобы заменить несколько пробелов одиночными пробелами. \s
обозначает пробел, а символ +
означает один или несколько. g
на конце означает сделать это глобально (т.е. более одного раза).