如何使用 nl2br 仅显示一个换行符?

发布于 2024-08-03 13:56:49 字数 203 浏览 4 评论 0原文

我正在使用 nl2br()\n 字符转换为
标记,但我不需要多个 <一次使用 code>
标签。例如,Hello \n\n\n\n Everyday 应该变成 Hello
>大家。

我该怎么做?

I am using nl2br() to convert \n characters to the <br /> tag but I do not want more than one <br /> tag at a time. For example, Hello \n\n\n\n Everybody should become Hello <br /> Everybody.

How can I do this?

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

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

发布评论

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

评论(3

蓝颜夕 2024-08-10 13:56:49

最直接的方法可能是首先使用简单的正则表达式将多个换行符替换为一个换行符:

nl2br(preg_replace("/\n+/", "\n", $input));

The most direct approach might be to first replace the multiple newlines with one using a simple regular expression:

nl2br(preg_replace("/\n+/", "\n", $input));
很糊涂小朋友 2024-08-10 13:56:49

如果您有 php 5.2.4+,您可以使用 preg_replace 和垂直空白字符类型 \v

$str = preg_replace('/\v+/','<br>', $str);

If you have php 5.2.4+ you can use preg_replace and the vertical whitespace character type \v

$str = preg_replace('/\v+/','<br>', $str);
能怎样 2024-08-10 13:56:49

我会尝试首先使用 preg_replace() 将重复的换行符替换为单个换行符,然后使用 nl2br 转换为 HTML
标记。 nl2br(preg_replace('/\n+/', '\n', $the_string)) 应该可以解决问题(未经测试)。

I'd try replacing repeated newlines with single newlines using preg_replace() first, then using nl2br to convert to HTML
tags. nl2br(preg_replace('/\n+/', '\n', $the_string)) should do the trick (untested).

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