Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
替换php中的空行_Php - Fatal编程技术网

替换php中的空行

替换php中的空行,php,Php,如何从字符串中删除多个空行。 我已经看过stackoverflow的例子,并试图相应地修改我的代码,但我没有得到正确的答案 function removeMultipleBlankLines(&$array) { $value = $array; $value = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $value); return $value; } $textarray=array("Th

如何从字符串中删除多个空行。 我已经看过stackoverflow的例子,并试图相应地修改我的代码,但我没有得到正确的答案

function removeMultipleBlankLines(&$array)
{
  $value = $array;
  $value = preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $value);

  return $value;
}

  $textarray=array("The red","big","  ","  ","fox","is ready","","","to jump.");

  echo print_r(removeMultipleBlankLines($textarray));
试试这个:

$string = str_replace("\r\n",'',$string);

为什么不
$string=trim($string)


您甚至可以使用第二个可选参数指定要修剪的内容,即
trim(string$str[,string$charlist])
请参阅文档还可以对其进行修剪:

   function removeMultipleBlankLines(&$array) {
      return trim(preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\n", $array));
    }
你可以做:

$array_with_nonblank_lines = array_filter($textarray, 'trim');
得到你想要的东西


这里是到的链接,它完成了这项工作。

使用正则表达式是可行的,但是一些不熟悉正则表达式的人可能会对表达式的布局感到困惑。在我看来,使用熟悉的trim命令是一个更好的选择,但最终我认为trim会更快,因为它不需要计算正则表达式等。

试试这个:

$str =preg_replace("/(^[\r\n]*|[\r\n]+)[\s\t]*[\r\n]+/", "\r\n", $str);

输出文件将在简单记事本和文本编辑器(如notepad++)上提供相同的输出。

我知道,由于某种原因,它不适合我。