Не получается удаление пробелов preg_replace

169
01 февраля 2020, 16:30

Пытаюсь удалить пробелы с помощью preg_replace(), обычно это не вызывает трудностей, однако в этот раз я потерпел фиаско!

 $aaa = 'ГОСТ 34.201-89 пам парам пам пам';
 if (preg_match_all("~ГОСТ\s*\d+\.\d+-\d+~iu",$aaa,$matches)) {
   echo 'Для '.$matches[0][0].'<hr>';
   echo preg_replace('/s+/', '', $matches[0][0]);
 }

ОТВЕТ ОТ СЕРВЕРА:

Для ГОСТ 34.201-89 ГОСТ 34.201-89

Помогите удалить пробел.

Answer 1

Вам одного слеша не хватило в нужном месте.

 $aaa = 'ГОСТ 34.201-89 пам парам пам пам';
 if (preg_match_all("~ГОСТ\s*\d+\.\d+-\d+~iu",$aaa,$matches)) {
   echo 'Для '.$matches[0][0].'<hr>';
   echo preg_replace('/\s+/', '', $matches[0][0]);
 }

Пример

Answer 2
echo preg_replace(
  '/(.*)\s+?([\d\.\-]*)\s+?(.*)/u',
  'ГОСТ$2',
  'ГОСТ 34.201-89 пам парам пам пам'
);
READ ALSO
PHP Сессии и авторизация

PHP Сессии и авторизация

Вопрос у меня такой: Можно ли использовать сессии для идентификации пользователя? Те заходя на главную страницу из куков берётся логин и пароль,...

142
Date Format c in timestamp?

Date Format c in timestamp?

Как преобразовать формат даты тип "C" в timestamp?

148
PHP - что значит &lt;=

PHP - что значит <=

В коде наткнулся на такую строчку:

174
Доступ к переменным из Controller(javafx)

Доступ к переменным из Controller(javafx)

У меня есть два класса: Controller: public class Controller {

190