/** * 多个连续空格只保留一个 * * @param string $string 待转换的字符串 * @return unknown */ static public function merge_spaces ( $string ) { return preg_replace ( "/\s(?=\s)/","\\1", $string ); }
php就复杂多了,而且我对正则也不是太了解。
代码经我修改后,达到了我想要的目的:除两个连续空格外,其它的单个不连续空格均被替换。
<?php header('Content-type: text/html; charset=utf-8'); $str = "PHP去除 多余空格 多个连续 空格只保留一个"; $str = preg_replace('/\s(?=\S)/','',$str); //只保留一个空格,还有(?=\s)这个写法叫“断言” echo $str; ?>
<?php
header('Content-type: text/html; charset=utf-8');
$str = "PHP去除 多余空格 多个连续 空格只保留一个";
$str = preg_replace('/\s(?=\S)/','',$str); //只保留一个空格,还有(?=\s)这个写法叫“断言”
echo $str;
?>
评论回复