0

我一直在努力解决这个问题。如果有人可以提供帮助会很棒

  $address= str_replace('/\s+/', ' ', $address_line_1.' '.$address_line_2.', '.$town_village_city.', '.$state_province_county.', '.$postal_code.', '.$country);
    return str_replace('/,+/',', ',$address);

想用单个逗号单个空格格式化地址,地址的任何部分都可能丢失,甚至完整的地址

不希望 ,,,, 被返回,但在这种情况下简单没有字符

4

2 回答 2

1
$address = implode(' ', array_filter(explode(' ',
   implode(', ', array_filter(explode(',', $address
))))));

这将在没有正则表达式的情况下工作,但考虑到正则表达式有多简单,我会坚持使用这些。

于 2013-01-26T00:08:11.527 回答
0

如果您想使用正则表达式,请使用preg_replace()而不是str_replace()

于 2013-01-26T00:03:34.377 回答