Ruby 2.2.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Stringクラス > lines

instance method String#lines

lines(rs = $/) -> [String][permalink][rdoc]
lines(rs = $/) {|line| ... } -> self

文字列中の各行を文字列の配列で返します。(self.each_line.to_a と同じです)


"aa\nbb\ncc\n".lines # => ["aa\n", "bb\n", "cc\n"]

行の区切りは rs に指定した文字列で、 そのデフォルト値は変数 $/ の値です。各 line には区切りの文字列も含みます。

rs に nil を指定すると行区切りなしとみなします。 rs に空文字列 "" を指定すると「パラグラフモード」になり、 改行コードが 2 つ以上連続するところで文字列を分割します (つまり空行で分割します)。

[PARAM] rs:
行末を示す文字列

ブロックが指定された場合は String#each_line と同じように動作します。

Ruby 2.6 までは deprecated の警告が出ますが、Ruby 2.7 で警告は削除されました。

[SEE_ALSO] String#each_line