You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP中移除字符串中的连续重复逗号

问题原因

你原有代码中的正则/,+/仅能匹配连续无间隔的逗号,无法处理逗号之间夹杂空白的场景,因此无法满足需求。

实现代码

<?php
$a = "test, , 1, , , 245 Park Avenue, New York, NY";
// 匹配所有连续的带任意空白的逗号组合,统一替换为单个逗号加空格
$my_string = preg_replace("/(\s*,\s*)+/", ", ", $a);
// 可选:清理字符串首尾残留的逗号、空白
$my_string = trim($my_string, ", \t\n\r\0\x0B");
echo $my_string;
// 输出结果:test, 1, 245 Park Avenue, New York, NY
?>

正则逻辑说明

  • \s* 匹配0个或任意多个空白字符(包含空格、制表符、换行符等)
  • 分组(\s*,\s*)+ 匹配所有连续出现的、中间夹杂任意空白的逗号序列
  • 替换值设为, 可以统一保证每个逗号后仅保留一个标准空格,完全匹配你预期的输出格式
  • 末尾的trim为可选逻辑,用于清理字符串首尾可能残留的逗号或多余空白

内容的提问来源于stack exchange,提问作者vishan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 17:06:04