JavaScriptを使って文字列の改行を削除したり、別の文字に置換したりするのは、データの整形やクリーンアップにおいてよくある操作です。本記事では、replaceメソッドを使用して改行を削除・置換する方法について詳しく解説します。
改行を削除する方法
改行を削除するには、正規表現を使って改行文字を空文字に置き換えます。改行文字には、\n(LF)や\r\n(CRLF)がありますので、これら両方に対応する必要があります。
以下のコードは、文字列からすべての改行文字を削除する例です。
const text = "Hello\nWorld!\r\nThis is a test."; const result = text.replace(/[\r\n]+/g, ''); // 改行を削除 console.log(result); // "HelloWorld!This is a test."
このコードでは、/[\r\n]+/gという正規表現を使用して、すべての改行文字(\rと\n)を対象にしています。gフラグはグローバル検索を意味し、すべての一致する部分を置き換えます。
改行を別の文字に置換する方法
改行を特定の文字や文字列に置き換える場合も、正規表現を使用します。例えば、改行をスペースに置き換える場合は以下のようにします。
const text = "Hello\nWorld!\r\nThis is a test."; const result = text.replace(/[\r\n]+/g, ' '); // 改行をスペースに置換 console.log(result); // "Hello World! This is a test."
さらに、改行をカンマに置き換える例は以下の通りです。
const text = "Hello\nWorld!\r\nThis is a test."; const result = text.replace(/[\r\n]+/g, ', '); // 改行をカンマに置換 console.log(result); // "Hello, World!, This is a test."
また、改行をbrタグに置換する方法については以下の記事で解説しています。
無効なURLです
よくある質問(FAQ)
Q. JavaScriptで文字列から改行を削除するには?
A. replace(/\n/g, “”)でUnix改行、replace(/\r\n|\r|\n/g, “”)でWindows/Mac/Unix全形式の改行を削除できます。空白行も削除するにはreplace(/^\s*[\r\n]/gm, “”)を使います。
Q. 複数の連続した改行を1つにまとめるには?
A. replace(/\n{2,}/g, “\n”)で2回以上の連続改行を1つにまとめられます。段落間の余白を整えるテキスト処理などによく使われます。
Q. 改行の前後の空白もまとめてトリムするには?
A. replace(/[\t ]*\n[\t ]*/g, “\n”)で改行の前後のタブ・スペースを削除できます。テキスト正規化の処理としてよく組み合わせて使われます。
まとめ
JavaScriptのreplaceメソッドを使って、文字列内の改行を削除したり、別の文字に置き換えたりする方法は非常にシンプルです。正規表現を活用することで、複数の改行文字に対応できるので、データの整形や表示形式の調整に役立ちます。ぜひ、さまざまなケースに応じて活用してみてください。

