如何限制nl2br上的换行?

时间:2015-12-13 14:13:17

标签: php regex newline

有点混淆如何做到这一点。

我看到了这个问题:stripping whitespace and limiting <br> in nl2br()

我有点想做同样但不确定如何做代码。

例如:

echo "<p><strong>Name:</strong></p>".nl2br($row['Achievements'])." ";

如果我有:

  • 成就1
  • 成就2
  • 成就3

nl2br会这样说:

成就1

成就1

成就1

如何防止线间断线?

应该是这样的:

成就1
成就1
成就1

我想要移除太多换行符。

$row['Education']= str_replace(array("\r\n", "\r", "\n"), 
                               "<br />", 
                               $row['Education']);

^似乎没有工作

1 个答案:

答案 0 :(得分:2)

我认为应该这样做。

echo preg_replace('/[\r\n]+/', '<br />', 'test
test

test


test




test');

输出:

test<br>test<br>test<br>test<br>test

正则表达式101演示:https://regex101.com/r/nO3aI9/1

采用多个新行并用一个HTML换行符替换它们。