[ruby-list:50210] String#split に nil を渡した時の動作について
From:
大塚達也 <towzero3@...>
Date:
2015-07-25 09:38:23 UTC
List:
ruby-list #50210
こんにちは、大塚と申します。 String#split の第1引数に nil を渡した時の動作について質問があります。 (BUGか仕様か分からなかったのでこちらで質問します。) リファレンスマニュアルには、第1引数に nil を渡した時は 「先頭と末尾の空白を除いたうえで、空白文字列で分割する。」 という記述があります。 http://docs.ruby-lang.org/ja/2.2.0/method/String/i/split.html しかし、実際には nil を渡した時は $; の値で分割されるようです。 $; = "XY" "aXYbXYcXY".split(nil) #=> ["a", "b", "c"] リファレンスマニュアルを読む限りでは、 split(sep = $;, limit = 0) という定義になっているので、nil を渡しているのに デフォルト値の $; が使われるのはバグだと思うのですが、 どうでしょうか。