hello
I have loop , in this loop im picking names , this names I want to be keys in %hash
but I don't know how to set in every loop entertain different key in the %hash (1 Reply)
Say that I want to match any of the following:
abc
def
ghi
The letters will either be "abc", "def", or "ghi", only those three patterns. The numbers will vary, but there will only be numbers between the brackets.
I've only been able to match abc, using the following:
abc.*.
I'm... (1 Reply)
Hi, sorry, two hash related questions in one day .. but this has got me a bit stuck.
I have a mysql database table that kind of looks like this, the table is called "view1" and a snippet of that table (SELECT'ing just rows with serial number 0629AN1200) is below
serial nic_name ... (2 Replies)
Can Someone explain me why even using Tie::IxHash I can not get the output data in the same order that it was inserted? See code below.
#!/usr/bin/perl
use warnings;
use Tie::IxHash;
use strict;
tie (my %programs, "Tie::IxHash");
while (my $line = <DATA>) {
chomp $line;
my(... (1 Reply)
Hi,
In Perl, is it possible to use a range of numbers with '..' as a key in a hash?
Something in like:
%hash = (
'768..1536' => '1G',
'1537..2560' => '2G'
);
That is, the range operation is evaluated, and all members of the range are... (3 Replies)
hi all,
i have a small problem regarding sorting the keys in a hash.
my %hash;
for($i=0;$i<19;$i++)
{
$hash{$i}=$i;
}
foreach $c (sort keys %hash)
{
print "\n $hash{$c}";
} (1 Reply)
I am trying to store this information (info and number) in hash. number is the key and info is value in a hash.i shown my code below.
#!/usr/bin/perl
use warnings;
use strict;
use XML::LibXML::Reader;
my $file;open $file, 'formal.xml');
my $reader =... (0 Replies)
Hi,
I have an hashes of hash, where hash is dynamic, it can be n number of hash. i need to compare data_count values of all .
my %result (
$abc => {
'data_count' => '10',
'ID' => 'ABC122',
}
$def => {
'data_count' => '20',
'ID' => 'defASe',
... (1 Reply)
I need to search for lines starting with "Include" and later has string "httpd-ssl.conf"
like the regex should return match for "Include conf/extra/httpd-ssl.conf"
I tried the following:
^]*#;].+Include.*httpd-ssl.conf
Below is my current file:
# Secure (SSL/TLS) connections... (7 Replies)
Discussion started by: mohtashims
7 Replies
LEARN ABOUT DEBIAN
hash::withdefaults
Hash::WithDefaults(3pm) User Contributed Perl Documentation Hash::WithDefaults(3pm)NAME
Hash::WithDefaults - class for hashes with key-casing requirements supporting defaults
version 0.05
SYNOPSIS
use Hash::WithDefaults;
%main = ( ... );
tie %h1, 'Hash::WithDefaults', {...};
tied(%h1)->AddDefault(\%main);
tie %h2, 'Hash::WithDefaults', [...];
tied(%h2)->AddDefault(\%main);
# now if you use $h1{$key}, the value is looked up first
# in %h1, then in %main.
DESCRIPTION
This module implements hashes that support "defaults". That is you may specify several more hashes in which the data will be looked up in
case it is not found in the current hash.
Object creation
tie %hash, 'Hash::WithDefault', [$case_option], [\%values];
tie %hash, 'Hash::WithDefault', [$case_option], [@values];
tie %hash, 'Hash::WithDefault', [$case_option], [%values];
The optional $case_option may be one of these values:
Sensitive - the hash will be case sensitive
Tolower - the hash will be case sensitive, all keys are made lowercase
Toupper - the hash will be case sensitive, all keys are made uppercase
Preserve - the hash will be case insensitive, the case is preserved
Lower - the hash will be case insensitive, all keys are made lowercase
Upper - the hash will be case insensitive, all keys are made uppercase
If you pass a hash or array reference or an even list of keys and values to the tie() function, those keys and values will be COPIED to the
resulting magical hash!
After you tie() the hash, you use it just like any other hash.
Functions
AddDefault
tied(%hash)->AddDefault(\%defaults);
This instructs the object to include the %defaults in the search for values. After this the value will be looked up first in %hash itself
and then in %defaults.
You may keep modifying the %defaults and your changes WILL be visible through %hash!
You may add as many defaults to one Hash::WithDefaults object as you like, they will be searched in the order you add them.
If you delete a key from the tied hash, it's only deleted from the list of specific keys, the defaults are never modified through the tied
hash. This means that you may get a default value for a key after you deletethe key from the tied hash!
GetDefaults
$defaults = tied(%hash)->GetDefaults();
push @$defaults, \%another_default;
Returns a reference to the array that stores the defaults. You may delete or insert hash references into the array, but make sure you
NEVER EVER insert anything else than a hash reference into the array!
Config::IniHash example
use Config::IniHash;
$config = ReadIni $inifile, withdefaults => 1, case => 'preserve';
if (exists $config->{':default'}) {
my $default = $config->{':default'};
foreach my $section (keys %$config) {
next if $section =~ /^:/;
tied(%{$config->{$section}})->AddDefault($default)
}
}
And now all normal sections will get the default values from [:default] section ;-)
AUTHOR
Jan Krynicky <Jenda@Krynicky.cz> http://Jenda.Krynicky.cz
COPYRIGHT
Copyright (c) 2002-2009 Jan Krynicky <Jenda@Krynicky.cz>. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl v5.14.2 2012-05-26 Hash::WithDefaults(3pm)