在cp中将csv字符串转换为带空格而不是逗号的字符串

时间:2010-07-02 02:32:56

标签: php string csv

我有一个像这样的逗号分隔的字符串

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

有些人在逗号后有空格,有些则没有。我想要做的就是删除所有逗号,然后将它们设为:

$str = "john alic mary joy";

在php中执行此操作的最佳方法是什么?

4 个答案:

答案 0 :(得分:3)

当逗号后面最多有一个空格时,

str_replace是最简单的解决方案:

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

如果可以有多个空格,那么我会使用正则表达式解决方案。 (见icktoofay的回答)

答案 1 :(得分:2)

虽然正则表达式可能不是最好的方法,但是像这样的简单正则表达式可以转换该数据:

$str = preg_replace("/ *,+ */", " ", $str);

答案 2 :(得分:1)

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

答案 3 :(得分:1)

非正则表达式方法:

$str = str_replace(", ", ",", $str); # Remove single space after a comma
$str = implode(' ', explode(',',str));