我正在尝试从像这样的字符串中删除多余的空格:
你好世界
到
你好世界
任何人都知道如何在PHP中这样做?
答案 0 :(得分:28)
使用正则表达式:
preg_replace('/( )+/', ' ', $string);
如果您还想删除每个多白字符,可以使用\ s(\ s是白色字符)
preg_replace('/(\s)+/', ' ', $string);
答案 1 :(得分:4)
$str = 'Why do I
have so much white space?';
$str = preg_replace('/\s{2,}/', ' ', $str);
var_dump($str); // string(34) "Why do I have so much white space?"
您还可以使用+
量词,因为它始终用替换它。但是,我发现
{2,}
表明您的意图更清晰。
答案 2 :(得分:0)
有关如何在preg_replace文档中删除多余空格的示例
答案 3 :(得分:0)
不是PHP专家,但他的听起来像是REGEX的工作......
<?php
$string = 'Hello World and Everybody!';
$pattern = '/\s+/g';
$replacement = ' ';
echo preg_replace($pattern, $replacement, $string);
?>
同样,PHP不是我的语言,但其想法是用单个空格替换多个空格。 \s
代表空格,+
代表一个或多个。最后的g
意味着全局(即不止一次)。