@stainer

Как убрать пробелы по обе стороны от нужного символа?

Добрый день, подскажите, как можно убрать пробелы по обе стороны от необходимого символа с помощью php?
Пример:
Название | Значение
Название 2 | Значение 2
Название 3 | Значение 3
Надо убрать пробелы вокруг символа "|"
Т.е. чтобы получилось:
Название|Значение
Название 2|Значение 2
Название 3|Значение 3
  • Вопрос задан
  • 110 просмотров
Решения вопроса 1
Kalombyr
@Kalombyr
Доброго дня.
Через регулярные выражения?
К примеру:
<?php
$text = '
Название | Значение
Название 2 | Значение 2
Название 3 | Значение 3
';

$res = preg_replace('/\s\|\s/', '|', $text);

echo $text;
echo '<br/>';
echo $res;
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
@IS-Builder
~ PHP-8 & REGEXP - This is a really powerful kit ~
Для подобного поиска с последующей заменой не нужна "артиллерия". Есть и полегковесней инструмент:
$text = '
Название | Значение
Название 2 | Значение 2
Название 3 | Значение 3
';

echo str_replace(' | ', '|', $text);
Ответ написан
Комментировать
pligin
@pligin
быдлокодер
Рассказал бы хоть откуда такие записи берутся и зачем.
<?php
$text = 'Название | Значение';
$data = explode('|',$text);
echo trim($data[0]).'|'.trim($data[1]);
//из файла
$lines = file('файл');
foreach ($lines as $num => $line) {
	$data = explode('|',$line);
    echo trim($data[0]).'|'.trim($data[1]);
}
Ответ написан
Комментировать
usdglander
@usdglander Куратор тега PHP
Yipee-ki-yay
Я бы написал как-нибудь так:
$cleared = implode('|', array_map(
    function ($piece) { return trim($piece); },
    explode('|', $text)
);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 23:00
5000 руб./за проект
19 апр. 2024, в 20:43
20000 руб./за проект