.net column
.NET開発者のためのブログメディア

Rubyでの改行コードの扱い方のご紹介|chomp!で改行コード削除してみよう!

2020年09月26日
SE
Rubyで文字列の途中で改行したり、改行コードをはどうやって削除するのですか。
PM
Windowsでは改行コードは とします。削除するにはchomp!やchopなどで削除します。

Rubyでの改行コードの扱い方とは?


今回は、Rubyでの改行コードの扱い方について説明します。
文字列の途中で改行する方法や改行コードの削除方法について紹介します。

改行コードはOSによって異なります。改行コードの統一方法についても紹介します。
Rubyでの改行コードの扱い方に興味のある方はぜひご覧ください。

改行の出力

Rubyで文字列の途中で改行する方法を紹介します。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

Windowsの場合、改行コードは\r\nです。
文字列の途中に改行コードを記述すると、文字列の途中で改行できます。

chompで改行コード削除

Rubyでは、chompメソッドを利用して行末の改行コードを削除できます。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

行末の改行コードが削除されていることが分かります。

chompメソッドは行末が改行コードでなければ削除されません。
実際のソースコードを見てみましょう。

実行結果は以下のようになります。

行末が改行コードでないので、何も削除されていないことが分かります。

このように、Rubyではchompメソッドを利用して行末の改行コードを削除できます。

chomp!で改行コード削除

chompメソッドに”!”を付与すると、文字列を直接変更できます。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

chompメソッドの実行後にstring1を表示しても”line1\r\n”のままですが、chomp!メソッドの実行後にstring2を表示すると”line2″となっています。
chompメソッドに”!”を付与すると、文字列を直接変更していることが分かります。
このようなメソッドを「破壊的メソッド」といいます。

改行コードが無い場合は以下のようになります。

実行結果は以下のようになります。

このように、Rubyではchompメソッドに”!”を付与すると、文字列を直接変更できます。

chopで改行コード削除

Rubyのchopメソッドは行末の1文字を削除します。つまり、改行コードでなくても削除します。
また、!を付与すれば破壊的メソッドになります。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

このように、Rubyではchopメソッドを利用しても行末の改行コードを削除できます。
しかし、行末が改行コードでない場合は意図しない削除となってしまうので注意が必要です。

stripで改行コード削除

Rubyのstripメソッドは文字列の前後の改行コード、半角スペース、タブを削除します。また、!を付与すれば破壊的メソッドになります。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

このように、Rubyのstripメソッドを利用すれば、改行コードを削除できます。

gsubで改行コード削除

Rubyのgsubメソッドは文字列を置換でき、また改行コードを空文字に置換することで改行コードを削除できます。!を付与すれば破壊的メソッドになります。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

このように、Rubyのgsubメソッドを利用すれば、改行コードを削除できます。

改行コードの統一

改行コードはOSによって異なりますので、改行コードを統一する方法を紹介します。ここでは、\r\n, \r, \n をすべて \n に統一します。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

\r\n, \r, \n がすべて \n に統一されていることが分かります。

このように、Rubyのgsubメソッドを利用すれば、改行コードを統一できます。

改行でsplit

改行コードを統一し、splitする例を紹介します。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

\nでsplitすることで配列に格納されていることが分かります。

このように、改行できます。

SE
改行コードの削除の仕方はいろいろあるのですね。
PM
ただ、改行コードはOSによって異なりますので、 , , はすべて に統一するようにしましょう。

Rubyで改行コードを使ってみよう

いかがでしたでしょうか。今回は、Rubyでの改行コードの扱い方について説明しました。

文字列の途中で改行する方法や改行コードの削除方法について紹介しましたが、改行コードはOSによって異なります。そこで改行コードの統一方法や、改行でsplitする方法についても紹介しました。

ぜひご自身でRubyのソースコードを書いて、理解を深めてください。


.NET分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)

Search

Popular

reccomended

Categories

Tags