#!/usr/bin/perl -w
use strict;
use warnings;
my %hash = ( "acc12", 1,
"acc2", 0,
"acc3", '',
"una1", 1 );
$hash{acc3} = ();
my $valid="acc1|acc2|acc3";
while (my ($key, $value) = each (%hash)) {
if ($key !~ $valid) {
print "Invalid Key: $key, ";
} else {
print "Valid Key: $key, ";
}
if (defined($value)) {
print "Value defined for $key: $value\n";
} else {
print "Value undefined for $key\n";
}
}
# Trying to minimize code to validate keys and values. I'm not sure you
can do exact
# matching with regex. Can validation for specific key names be done
for each key
# without using multiple IF statements?
#
# Valid keys: acc1, acc2, acc3
# Values must be defined
#
# expected results:
# una1 should be invalid
# acc12 should be invalid
# acc3 should be valid, key value should not be undefined
# acc2 should be valid
_______________________________________________
Perl-Unix-Users mailing list
Perl-Unix-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs