Fri, Oct 30, 1998 at 12:27:24AM +0900 において
Inaba Hiroto さん曰く:

> 	... By default, empty leading fields are preserved, and empty
> 	trailing ones are deleted.

これは次の事を示しています。

$ perl -e 'print join("/", split(/ /, "   1 2 3   ")), "\n"'
///1/2/3

$ perl -e 'print join("/", split(" ", "   1 2 3   ")), "\n"'
1/2/3

デフォルトでは先頭の空フィールドは保ち、末尾の空フィールドは削除する。

パターンに1個のスペースを指定した場合、awk のデフォルトの振舞をエミュ
レートして、先頭の空フィールドを生成しなくなります。

この点は Ruby も同じです。(まとめた方に書いておけば良かったですね。)

$ ruby -e 'p "   1 2 3   ".split(/ /)'
["", "", "", "1", "2", "3", "", ""]

$ ruby -e 'p "   1 2 3   ".split(" ")'
["1", "2", "3"]

> まあ、自分の読みかたが悪かっただけです。すみません。

いえいえ、すみませんと言われると困ってしまいます。私も英語だけだったら
勘違いしていたかもしれませんし。Programming Perl の日本語版に感謝。こ
れには本当にお世話になりました。文章とページ番号を覚えてしまうぐらい読
みましたから。(やはり世界進出には英語版の Ruby 本が必要ですね。)


青山 和光 Wakou Aoyama <wakou / fsinet.or.jp>