替换php中的文本函数

发布于 2024-08-09 00:20:18 字数 263 浏览 4 评论 0原文

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

\n所说的\r\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\r\n”和“\r”。这就是我解析的文本中出现的所有组合。

有没有办法在 php 中做到这一点?

I want to clean up some parsed text such as

\n the said \r\n\r\n\r\n I look in your eyes my dear\r\n\r\nI see green rolling Forests\r\n\r\nI see the far away Sky\r\n\r\nThey turn into the rain\r\n\r\n\r\nI see high soaring eagles... more\n

So I want to get rid of the "\n", "\r\n", "\r\n\r\n", "\r\n\r\n\r\n", "\r\n\r\n\r\n\r\n" and "\r". That's all the combinations that appear in my parsed text.

Is there a way to do this in php?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

帝王念 2024-08-16 00:20:19

如果您只想要 1 个换行符而不是多个换行符,我建议这样做:

$clean = preg_replace(array("/\r+/","/(\n){2,}/"),array("","\n"),$text);

否则 str_replace 删除换行符或 nl2br 将完成这项工作。您还可以调整正则表达式,用 BR 标记替换 1 个或多个换行符:

$clean = preg_replace(array("/\r+/","/\n+/"),array("","<br />"),$text);

If you just want 1 newline instead of multiple I would suggest this:

$clean = preg_replace(array("/\r+/","/(\n){2,}/"),array("","\n"),$text);

Otherwise str_replace to strip out newlines or nl2br will do the job. You could also adapt the regex to replace 1 or more newlines with a BR tag:

$clean = preg_replace(array("/\r+/","/\n+/"),array("","<br />"),$text);
情徒 2024-08-16 00:20:19

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

会删除所有新行字符。

如果您希望它们作为新行,我会将 HTML 的替换更改为
(或者更好的是,使用 PHP 的 nl2br()),或者例如,使用 \n 将它们标准化为普通文本。

What about

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

That will remove all new line characters.

If you want them as new lines, I'd change the replace to <br /> for HTML (or better still, use PHP's nl2br()), or standardise them in normal text with \n, for example.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文