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

发布于 2024-09-08 02:43:40 字数 231 浏览 1 评论 0原文

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

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

有些在逗号后有空格,有些则没有。我想要做的是删除所有逗号并使它们像这样:

$str = "john alic mary joy";

What is the best way to do this in php?

I'm having a string which is comma seperated like this

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

Some are having space after comma and some don't. What I want to do is remove all the commas and make them like this:

$str = "john alic mary joy";

What is the best way to do this in php?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

时光沙漏 2024-09-15 02:43:40

当逗号后面最多有一个空格时,str_replace是最简单的解决方案:

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

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

str_replace is the simplest solution when there is at most one space after the comma:

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

If there can be multiple spaces, then I would go with the regex solution. (see icktoofay's answer)

鼻尖触碰 2024-09-15 02:43:40

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

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

Although regular expressions may not be the best way, a simple regular expression such as this could transform that data:

$str = preg_replace("/ *,+ */", " ", $str);
你是年少的欢喜 2024-09-15 02:43:40

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

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

携君以终年 2024-09-15 02:43:40

非正则表达式方法:

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

A non-regex approach:

$str = str_replace(", ", ",", $str); # Remove single space after a comma
$str = implode(' ', explode(',',str));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文