Hash-Related Functions

Contents | Up | Prev | Next

# 2.1. Hash-Related Functions

## delete

delete can be used to remove a key or a set of keys out of a hash. For example:

    $myhash{"hello"} = "world";
    $myhash{"perl"} = "TMTOWTDI";
    $myhash{"shlomi"} = "fish";

    if (exists($myhash{"perl"}))
    {
        print "The key perl exists!\n";
    }
    else
    {
        print "The key perl does not exist!\n";
    }

    delete($myhash{"perl"});

    if (exists($myhash{"perl"}))
    {
        print "The key perl exists!\n";
    }
    else
    {
        print "The key perl does not exist!\n";
    }

## The Comma Regarding Hashes

The comma can be used to combine two arrays into one larger one. Given the fact that a mini-hash with one key and one value can be specified using the `$key => $value` notation (which is essentially equivalent to `$key, $value`) a hash can be initialized in one statement.

Here's an example:

    %hash1 = (
        "shlomi" => "fish",
        "orr" => "dunkelman",
        "guy" => "keren"
        );

    %hash2 = (
        "george" => "washington",
        "jules" => "verne",
        "isaac" => "newton"
        );

    %combined = (%hash1, %hash2);

    foreach $key (keys(%combined))
    {
        print $key, " = ", $combined{$key}, "\n";
    }

If the two combined hashes contain several identical keys, then the values of the latter hash will win.

Contents | Up | Prev | Next