日本語文字列の長さ
たのしいRuby第二版のp219
p 'オブジェクト指向プログラミング言語'.length p 'オブジェクト指向プログラミング言語'.size p 'オブジェクト指向プログラミング言語'.split(//s).size
のプログラムですが、そのまま実行するとエラーになります。
>ruby p219-1.rb 34 34 p219-1.rb:5:in `split': incompatible encoding regexp match (Shift_JIS regexp wit h ASCII-8BIT string) (ArgumentError) from p219-1.rb:5:in `<main>' >
が、-Ksを付けて実行すると、全て17で返ってきます。
>ruby -Ks p219-1.rb 17 17 17 >
-Ksを付けた場合はともかく、エラーになっちゃうのは困るような気がします。(ちゃんと例外捕捉しなさいよということか?)