Пытаюсь удалить пробелы с помощью 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
Помогите удалить пробел.
Вам одного слеша не хватило в нужном месте.
$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]);
}
Пример
echo preg_replace(
'/(.*)\s+?([\d\.\-]*)\s+?(.*)/u',
'ГОСТ$2',
'ГОСТ 34.201-89 пам парам пам пам'
);
Продвижение своими сайтами как стратегия роста и независимости