使用正则表达式\s来匹配空格,总是会少匹配一个空格

素衣白马客京华 2014-10-09 07:36:01
	$abc = "TC,           M1";

$abc = ereg_replace(",[\s]+", ",", $abc);
echo $abc;



以上代码是想删除字符串str中逗号以后的空格,期待结果是“TC,M1”
但实际运行的结果却是"TC, M1",在逗号和M1之间多个一个空格,是为什么呢
...全文
472 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
一起混吧 2014-10-09
  • 打赏
  • 举报
回复
建议你用preg_replace , 这个函数要更快。 一定要用ereg_replace , 可以改为: $abc = ereg_replace(",[ ]+", ",", $abc);
xuzuning 2014-10-09
  • 打赏
  • 举报
回复
再说 ereg 也没有 \s 这样的表述
天涯过客009 2014-10-09
  • 打赏
  • 举报
回复

$abc = "TC,           M1";
$a=str_replace(' ','',$abc);
echo $a;

TC,M1
xuzuning 2014-10-09
  • 打赏
  • 举报
回复
ereg 函数组已在废止之列,没必要纠结了
  • 打赏
  • 举报
回复
	$abc = 'TC,           M1';

	$abc = preg_replace("/,[\s]+/", ",", $abc);
	echo "<br>$abc";
试了下,使用preg_replace,结果是正确的,没有那个空格了,这是为什么呢

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧