我正在使用nl2br()
将\n
个字符转换为<br />
标记,但我一次不想要多个<br />
个标记。例如,Hello \n\n\n\n Everybody
应该变为Hello <br /> Everybody
。
我该怎么做?
答案 0 :(得分:8)
最直接的方法可能是首先使用简单的正则表达式替换多个换行符:
nl2br(preg_replace("/\n+/", "\n", $input));
答案 1 :(得分:3)
如果你有php 5.2.4+,你可以使用preg_replace和垂直空白字符类型\v
$str = preg_replace('/\v+/','<br>', $str);
答案 2 :(得分:0)
我首先使用preg_replace()尝试使用单个换行替换重复的换行符,然后使用nl2br转换为HTML
标签。 nl2br(preg_replace('/\n+/', '\n', $the_string))
应该做的(未经测试)。