見出し画像

[Ruby] 改行コードで文字列連結

配列を改行コードでjoinすると、改行コードがエスケープされてしまっている😱

words = ['今日は''台風で''風が強い']
words.join('\n')

↑のように書くと、改行コードがエスケープされて以下のような結果に。。。

=> "今日は\\n台風で\\n風が強い"

解決策

リテラルの特殊文字を使うときは、シングルクオーテーションではなく、ダブルクオーテーションで囲む。

なので、セパレート文字はダブルクオーテーションで囲むように修正するとエスケープされなくなった🎉

words.join("\n")
=> "今日は\n台風で\n風が強い"

おまけ

連結するときに、配列内の空文字要素を除外したいときはreject(&:blank?)を使う

words.reject(&:blank?).join("\n")


この記事が気に入ったらサポートをしてみませんか?