удалить текст между ',' и 'пробелом', если найдено с помощью регулярного выражения - PullRequest
0 голосов
/ 01 марта 2012

У меня есть такой текст

Vindu1: Antall: 4, Bredde i mm:  , Hoyde i mm: 1.

Если есть пробел, за которым следует ',' (' ,'), я хочу удалить весь текст до него, пока не найду ','

результат будет выглядеть как

Vindu1: Antall 4, Hoyde i mm: 1.

Я знаю, что для этого нужно использовать функцию preg_replace, но я не могу понять, что такое регулярное выражение

Ответы [ 3 ]

4 голосов
/ 01 марта 2012

Вы можете сделать:

preg_replace('/(?<=,|^)[^,]+ ,/', '', $str);

Пример:

$str = "Vindu1: Antall: 4, Bredde i mm: , Hoyde i mm: 1.";
echo preg_replace('/(?<=,|^)[^,]+ ,/', '', $str);

Вывод:

Vindu1: Antall: 4, Hoyde i mm: 1.
0 голосов
/ 01 марта 2012
$text = 'Vindu1: Antall: 4, Bredde i mm: , Hoyde i mm: 1.'

if(strstr($text, ' ,'))
{

    $text=explode(' ,', $text);
    $text1 = $text[0];
    $text2 = $text[1];

    $text = explode(',', $text1);

    $result = $text[0].','.$text2;

}

Извиняюсь за присвоение имен переменных, пока не могу придумать ничего толкового.

0 голосов
/ 01 марта 2012

preg_replace('/\\s+,/', ',') должен это сделать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...