use POSIX;
my $today = POSIX::strftime('%Y%m%d', localtime);
Thursday, October 30, 2008
How to take a hash slice.
If you want to assign some variables of a hash to an array. i.e you want to take some of the elements from hash based on there keys into a array here is a trick\
my %hash = (one => 'one', two => 'two', three => 'three');
my @array ;
@array = @{$hash}{'one','two'};
If you have a hashref and want to take the values of some keys into an array you can do the following.
my $hashref = {one => 'one', two => 'two', three => 'three'};
my @array ;
@array = @{%$hash}{'one','two'};
Posted by Nexis at 1:53 AM 0 comments
Labels: Data Structures
Getopt::Long :s option specifier
: s option of getopt::long come very much handy when one is looking for the following requirement
1) If a command line option is passed a paramter it is taken as a value for the given option
i.e perl program -option1 value1
$option1 will take value1.
2) If a command line option is not mentioned then variable remains undefined.
i.e perl program
$option1 will remain undef.
3) If a command line option is mentioned but paramter is not passed, then a empty string will be assigned to $option if :s is used and 0 if :i is used
i.e perl program -option1
$option will be q{}... an empty string.
Please take a look at http://search.cpan.org/dist/Getopt-Long/lib/Getopt/Long.pm for further information.
Posted by Nexis at 1:36 AM 0 comments
Labels: perl modules