07/05/07 00:17:23
みんなよく頑張ったな。先生感心したぞ。
my $str = 'foo/bar/baz/quux';
sub p { printf ">>%d:[%s]\n", shift, join ',', @_ }
p(438, (my @arr, undef) = split m{/}, $str);
p(439, do { @arr = split m{/}, $str; pop @arr; join ',', @arr }); # & >>444-445
p(440, sub { @_[ 0 .. $#_ - 1 ] }->(split m{/}, $str));
p(441, split m{/(?=.+/)|/.+$}, $str);
p(446, splice @{[ split m{/}, $str ]}, 0, -1);
p(448, (split m{/}, $str)[ 0 .. (split m{/}, $str) - 2 ]);
p(450, (split m{/}, $str)[ 0 .. $str =~ tr|/|/| - 1 ]);
p(451, $str =~ m{(.+?)/}g);