Замена символов в тексте по условию

hwmaster

Новичок
Замена символов в тексте по условию

День добрый.

Как правильно сделать вставку пробелов после запятых и точек?
Т.е. из строки "привет,это,пример.нужно,сделать,замену" получить - "привет, это, пример. нужно, сделать, замену", т.е. вставить пробелы.
На данный момент это делается так:

PHP:
$text="привет,это,пример.нужно,сделать,замену";
$text=preg_replace("/[,]/",", ",$text);// вместо запятой ставим запятую с пробелом
$text=preg_replace("/[.]/",". ",$text);// вместо точки ставим точку с пробелом
$text=preg_replace("/\s+/"," ",$text);// удаляем лишние пробелы
Можно ли как-то упростить данную процедуру?
И еще как сделать так, чтобы числа не подвергались данной процедуре, а то строка "число,пи,равно,3.1415" преобразуется в:
"число, пи, равно, 3. 1415". Можно ли как-то ввести проверку типа, если точка среди цифр, то замену не проводить?

Спасибо
 

magiq

Новичок
учи регулярки. За тебя тут работу никто делать не будет
 

hwmaster

Новичок
Автор оригинала: magiq
учи регулярки. За тебя тут работу никто делать не будет
Ты сейчас просто пнул по жопе и радуешься.
Вместо этого пнул бы в нужном направлении.

Чего их учить-то? Их нужно уметь составлять! А нах мне учиться их составлять, если они мне нафиг не нужны. Только одну функцию сделать и надо.
Похоже никто не знает, как это сделать проще, чем я это сделал в примере выше. Значит так можно и оставить.

-~{}~ 26.02.10 13:22:

Автор оригинала: Sigorma
...
Спасибо. Это уже пинок в нужном направлении.
Я так понимаю эта функция быстрей работает, чем preg_replace ?
 

akd

dive now, work later
Команда форума
hwmaster я тебе составлю нужную регулярку за 50 WMZ.
 
Сверху