www.fromthevalley.com.au

Delete a Hash Value

DESCRIPTION

Deletes the specified key(s) and their associated values from a hash. For each key, returns the deleted value associated with that key, or the undefined value if there was no such key. Deleting from $ENV{} modifies the environment. Deleting from a hash tied to a DBM file deletes the entry from the DBM file. (But deleting from a tie()d hash doesn't necessarily return anything.)

The following deletes all the values of a hash:

 

    foreach $key (keys %HASH) {
delete $HASH{$key};
}

And so does this:

 

    delete @HASH{keys %HASH}

(But both of these are slower than just assigning the empty list, or using undef().) Note that the EXPR can be arbitrarily complicated as long as the final operation is a hash element lookup or hash slice:

 

    delete $ref->[$x][$y]{$key};
delete @{$ref->[$x][$y]}{$key1, $key2, @morekeys};
HOME |  AJAX |  APACHE |  Bizphone |  CSS |  DNS |  General |  Graphics |  HTML |  Hardware |  Javascript |  Linux |  MAC |  MS SQL |  Mail |  Microsoft |  OFFICE 365 |  Perl |  Postgres |  SEO |  Social Media |  VMware |  Windows 10