在php中替换文本函数

在php中替换文本函数,php,text-parsing,Php,Text Parsing,我想清理一些已解析的文本,例如 \n所说的\r\n\r\n\r\n我看着你的眼睛,亲爱的\r\n\r\n我看到绿色的连绵起伏的森林\r\n\r\n我看到遥远的天空\r\n\r\n它们变成了雨\r\n\r\n我看到高飞的鹰。。。更多\n 所以我想去掉“\n”、“\r\n”、“\r\n\r\n”、“\r\n\r\n”、“\r\n\r\n\r\n”和“\r\n”。这就是我解析文本中出现的所有组合 在php中有这样做的方法吗?那怎么办 $text = str_replace(array("\n", "\

我想清理一些已解析的文本,例如

\n所说的\r\n\r\n\r\n我看着你的眼睛,亲爱的\r\n\r\n我看到绿色的连绵起伏的森林\r\n\r\n我看到遥远的天空\r\n\r\n它们变成了雨\r\n\r\n我看到高飞的鹰。。。更多\n

所以我想去掉“\n”、“\r\n”、“\r\n\r\n”、“\r\n\r\n”、“\r\n\r\n\r\n”和“\r\n”。这就是我解析文本中出现的所有组合

在php中有这样做的方法吗?

那怎么办

$text = str_replace(array("\n", "\r"), '', $text);
这将删除所有新行字符


如果您希望将它们作为新行,我会将HTML的替换更改为

(或者更好地使用PHP的
nl2br()
),或者使用
\n
将它们标准化为普通文本。

如果您只需要一行而不是多行,我建议:

$clean = preg_replace(array("/\r+/","/(\n){2,}/"),array("","\n"),$text);
否则stru_replace去掉新行或nl2br就可以了。您还可以调整正则表达式,用BR标记替换1个或多个换行符:

$clean = preg_replace(array("/\r+/","/\n+/"),array("","<br />"),$text);
$clean=preg\u replace(数组(“/\r+/”,“/\n+/”),数组(“,”
”,$text);
工作完美,再好也没有了。谢谢