str_replace多个空行,1行

时间:2014-05-29 05:41:39

标签: php

我想在php中用一行替换多个空行。目前我正在替换=用空格。

$message = str_replace('=', ' ', $message); 

关于如何删除多个{甚至可能只有5个空行}的任何建议只有一个?

输出

Received On Thu, 29 May 2014 - 01:50 AM / user@test.com



= test





=

2 个答案:

答案 0 :(得分:1)

 $message = 'Received On Thu, 29 May 2014 - 01:50 AM / user@test.com



= test





=';
echo preg_replace('/\n(\s*\n){2,}/', "\n\n", $message); // Quotes are important here.

OR

echo preg_replace('/\n(\s*\n){2,}/', "<br><br>", $message); //worked in browser

答案 1 :(得分:1)

这里是使用单个新行符号替换多个新行符号和任何新行/空格/制表符号的变体:

$message = preg_replace('/[\r\n][\r\n\t ]*/', "\n", $message);

更新:如果要在单行文本中转换多行文本,可以使用:

$message = preg_replace('/[\r\n][\r\n\t ]*/', " ", $message);