PHP preg_replace只出现多次

时间:2011-10-03 16:12:50

标签: php preg-replace

以下代码将正确替换空格:

$string = preg_replace("/[[:blank:]]+/", "", $string);

但是如何才能使它只有在超过2个空格的情况下才会替换它?因为现在它取代了所有空间,我只需要它来替换多个空格。我在这里搜索并看到人们使用完全不同的preg_replace代码,但它也删除了换行符,所以如果我发布的代码可以简单地修改为允许多个空白,那就太好了。我记得有一段时间回来阅读一个教程,它在preg区域使用类似{2+}的东西来匹配任何超过两个或者其他东西的东西,但不知道如何让它正常工作。感谢。

2 个答案:

答案 0 :(得分:6)

/[[:blank:]]{2,}/

这将使它替换两个或更多的序列。

php manual has a chapter about repetition/quantifiers

答案 1 :(得分:0)

$string = preg_replace("/[[:blank:]]+/", " ", $string);

与您的相同,但用一个空格替换所有出现的空格。