使用php从字符串中删除不需要的逗号

时间:2015-12-21 11:51:11

标签: php

我的结果是这样的

$str = 189 Exeter Road, , , , , Harrow, Middlesex

我想把上面的字符串作为

$str = 189 Exeter Road, Harrow, Middlesex

如何在php中删除所有这些逗号。有没有办法清除

我用过

$var = preg_replace('/,{2,}/', ',', trim($str, ','));

3 个答案:

答案 0 :(得分:2)

此捕获逗号带有尾随空格,如果超过2次,则替换为带空格的1个逗号

Regex 101

$str = "189 Exeter Road, , , , , Harrow, Middlesex";

echo preg_replace("/(,\s){2,}/", ", ", $str); // 189 Exeter Road, Harrow, Middlesex

答案 1 :(得分:1)

尝试以下解决方案:

$str = '189 Exeter Road, , , , , Harrow, Middlesex';

$data = explode(',', $str);
$data = array_map('trim', $data);
$data = array_filter($data);
echo implode(',', $data);

答案 2 :(得分:1)

您可以explode进入数组,然后使用array_filter清空空元素,最后将implode清除回字符串

$str = '189 Exeter Road, , , , , Harrow, Middlesex';

$str = implode(', ', array_filter(explode(', ', $str)));