Posted at

改行っぽいものすべてにマッチする正規表現

More than 3 years have passed since last update.

こんな改行コードがばらばらなテキストがあったとき、

str = "A\r\nB\rC\nD"

いままで次のようにがんばってマッチさせていましたが、

str.gsub(/\r\n|\r|\n/, "<br/>")     # => "A<br/>B<br/>C<br/>D"

\R だけでよかったと知りました。

str.gsub(/\R/, "<br/>")             # => "A<br/>B<br/>C<br/>D"

\R は、広い範囲で、改行になる文字すべてにマッチしてくれるので、<br/> に変換したい場合などはなおさら \R でいいように思いました。


参照

正規表現

http://docs.ruby-lang.org/ja/2.1.0/doc/spec=2fregexp.html