delete

配列およびハッシュの要素を削除する。
配列の場合、長さは変わらず空要素になる。つまりundefしたのと同じ。

use strict;
my %hash = (key1=>"value1",
            key2=>"value2",
            key3=>"value3");
delete($hash{key1});
if (exists($hash{key1})) {
    print "ここは出力されないはず\n";
}
print join("\n",keys %hash);


my @list = (1, 2, 3);
delete($list[1]);
print scalar @list, "\n";
print join("\n", @list);