\R は、広い範囲で、改行になる文字すべてにマッチしてくれる
$str = preg_replace('/\r?\n|\r/', '<br>', $str);
↑こんなことしなくても、↓これでいいんだね。。
$str = preg_replace('/\R/', '<br>', $str);
ただし、どの正規表現ライブラリで使えるかは不明でした…。
どうやらPHPでは使えるらしい、ということで。
あと、参照元はrubyのネタなので、rubyでも使えるのでしょう。
\R は、広い範囲で、改行になる文字すべてにマッチしてくれる
$str = preg_replace('/\r?\n|\r/', '<br>', $str);
$str = preg_replace('/\R/', '<br>', $str);