NL2BRを使用して1つの新しいラインのみを表示するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1387296

  •  21-09-2019
  •  | 
  •  

質問

私は使っている nl2br() 変換する \n のキャラクター <br /> タグですが、私は複数を望んでいません <br /> 一度にタグを付けます。例えば、 Hello \n\n\n\n Everybody になるはずです Hello <br /> Everybody.

これどうやってするの?

役に立ちましたか?

解決

最も直接的なアプローチは、最初に複数のニューラインを単純な正規表現を使用して1つに置き換えることです。

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

他のヒント

PHP 5.2.4+がある場合は、preg_replaceと垂直の白文学文字タイプを使用できます \v

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

最初にpreg_replace()を使用して繰り返しのニューラインを単一のニューラインに置き換えてから、NL2BRを使用してHTMLに変換してみます
タグ。 nl2br(preg_replace('/\n+/', '\n', $the_string)) トリック(テストされていない)を行う必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top