Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/293: Рейтинг темы: голосов - 293, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 18.10.2011
Сообщений: 30

Как удалить повторяющиеся пробелы в тексте?

18.06.2012, 11:33. Показов 53855. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Допустим имеется текст, в котором между словами есть двойные, тройные и более пробелы. Задача убрать лишние пробелы, оставив только по 1 пробела.

Я написал такой код, но почему то не работает:
PHP
1
2
3
4
5
6
7
$text1 = "Длинный    объемный текст с   лишние пробелами";
$arr = explode(" ", $text1);
for($i=0;$i<count($arr);$i++)
{
    $text2 = $text2." ".trim($arr[$i]);
}
$text2 = trim(text2);
если через echo выводить на экран текст, то выводится нормально, без лишних пробелов, но когда этот текст добавляю в базу, там они опять с лишними пробелами без изменений. как решить проблему?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.06.2012, 11:33
Ответы с готовыми решениями:

Как удалить все пробелы в строке, и если есть кавычки, то между ними пробелы заменить на %
Как удалить все пробелы в строке, и если есть кавычки, то между ними пробелы заменить на %? Вот пример строки: $str = 'Большая,...

Как удалить повторяющиеся символы в строке?
Есть необычная задача. Переменная с набором символов, как вырезать все повторяющиеся символы, т.е. чтобы после вырезания каждый символ...

Как удалить повторяющиеся элементы двух массивов?
Имеется три массива $m_1, $m_2 и $m_3. Первый массив содержит буквенно-цифровые элементы, разделенные пробелами: $m_1 = &quot;n 1 1...

11
 Аватар для Василий Макогон
270 / 226 / 11
Регистрация: 20.04.2012
Сообщений: 817
18.06.2012, 11:39
preg_replace
1
8 / 9 / 2
Регистрация: 19.01.2010
Сообщений: 31
18.06.2012, 11:47
PHP
1
$text =  preg_replace('/ {2,}/',' ',$text1);
3
0 / 0 / 0
Регистрация: 18.10.2011
Сообщений: 30
18.06.2012, 11:51  [ТС]
Спасибо! Работает!
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
30.09.2015, 09:34
а если пробела не два, а неизвестно сколько (3, 4 и т.д.)?
0
1 / 1 / 0
Регистрация: 25.10.2015
Сообщений: 36
10.01.2016, 02:34
PHP
1
$text = preg_replace('|[\s]+|s', ' ', $text1);
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
11.01.2016, 12:06
Ребят тема 3х летней давности, зачем вы ее поднимаете?
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
11.01.2016, 12:07
а зачем плодить повторы?
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
11.01.2016, 12:20
Хм, затем что когда человек открывает тему, он читает ее сначала и зачем ему информация 3х летней давности?
0
1 / 1 / 0
Регистрация: 25.10.2015
Сообщений: 36
11.01.2016, 12:34
Я столкнулся с таким же вопросом который писал Laroux, найдя решение, решил поделиться здесь.
0
 Аватар для Laroux
172 / 167 / 75
Регистрация: 21.11.2014
Сообщений: 1,490
11.01.2016, 12:36
не.. не такой подход.
Извините, но я по себе сужу: я прихожу в форум для чего? Чтобы получить ответ на некий вопрос. Форум тематический (подходящий). Есть вероятность, что такой вопрос (или подобный) уже задавали.
Соответственно, я перед тем как флудить возможно тем же самым лучше сначала поищу.
О! нашел! (как в данном случае) - но немножко не то.. соответственно, я уточнил вопрос. И мне тут же в этой теме ответили.

Тема стала более универсальной и при этом не размножилась.

На мой взгляд это как раз так и должно работать.

P.S. Да, возможно я и неправ, но кажется, что прав таки
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
11.01.2016, 12:55
Цитата Сообщение от Laroux Посмотреть сообщение
P.S. Да, возможно я и неправ, но кажется, что прав таки
Возможно и я не прав, просто я привык, к тому что для каждого вопроса создается своя тема. Т.е. если что то нужно, я ищу на форуме, если не нахожу(или нахожу подобное) , то создаю новую тему со своим вопросом, с отсылкой на старую. Но действительно не будем разводить холиваров
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.01.2016, 12:55
Помогаю со студенческими работами здесь

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

Удалить повторяющиеся строки
Для составления некой базы уникальной потребовалось удалять все те строки которые ранее попадались, выход думаю только можно такой найти: ...

Удалить не повторяющиеся элементы массива
Здравствуйте! нужна функция типа array_keys(array_flip()) наоборот у меня есть массив В результате должно выйти пробовал вот...

Удалить повторяющиеся элементы в массиве
Есть массив array(11) { =&gt; string(22) &quot;Программист&quot; =&gt; string(22) &quot;Программист&quot; =&gt; string(26)...

Удалить пробелы в utf-8
Пробелы между формами(( в windows-1251 перевожу - всё окей(именно с формами, а текст - билиберда). Пробывал:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru