преобразование строки CSV в строку с пробелами вместо запятых в PHP - PullRequest
1 голос
/ 02 июля 2010

У меня есть строка, разделенная запятой, вот так

$str = "john, alice, mary,joy";

У некоторых пробел после запятой, а у некоторых - нет.Что я хочу сделать, это удалить все запятые и сделать их так:

$str = "john alic mary joy";

Какой лучший способ сделать это в php?

Ответы [ 4 ]

3 голосов
/ 02 июля 2010

str_replace - самое простое решение, когда после запятой есть не более одного пробела:

$str = str_replace(array(', ', ','), ' ', $str);

Если пробелов может быть несколько, я бы выбрал решение регулярных выражений(см. ответ icktoofay)

2 голосов
/ 02 июля 2010

Хотя регулярные выражения могут быть не лучшим способом, простое регулярное выражение, подобное этому, может преобразовать эти данные:

$str = preg_replace("/ *,+ */", " ", $str);
1 голос
/ 02 июля 2010

Подход без регулярных выражений:

$str = str_replace(", ", ",", $str); # Remove single space after a comma
$str = implode(' ', explode(',',str));
1 голос
/ 02 июля 2010

echo str_replace(',',' ',str_replace(' ','',$str));

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