I'll leave the implementation of the rest of the possibilities as an exercise for the reader.package States; use Exporter; @ISA = qw(Exporter); @EXPORT_OK = qw( is_state get_capitol ); use strict; my %abbrev = ( WISCONSIN => 'WI', ); my %expand = reverse %abbrev; my %capitals = ( WI => 'MADISON', ); sub is_state { my $state = uc shift; return 1 if exists $abbrev{$state}; return 1 if exists $expand{$state}; return 0; } sub get_capital { my $state = uc shift; $state = $abbrev{$state} if exists $abbrev{$state}; return $capitals{$state}; } 1;
Extra credit is given if the reader finds the CPAN solution. :-)
------
We are the carpenters and bricklayers of the Information Age.
Don't go borrowing trouble. For programmers, this means Worry only about what you need to implement.
Please remember that I'm crufty and crochety. All opinions are purely mine and all code is untested, unless otherwise specified.
In reply to Re: use constant for strings
by dragonchild
in thread use constant for strings
by shemp
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |