I'm having a problem sorting data items that are alpha-numeric strings.
I know how to do it if the string is all alpha or all numeric, but the
combo eludes me.
Take as example the following code. It is my desire that the machine
names be processed in the order that they have been loaded into the
hash. This is an example only- the machine names will not actually be
loaded in order. Also, there will not always be "dashes" separating the
alpha from the numbers:
use strict;
use warnings;
my %mdata =
(
'CALIBRATION1', 1,
'CALIBRATION02', 1,
'LABVIEW-1', 1,
'LABVIEW-2', 1,
'LABVIEW-4', 1,
'LABVIEW-11', 1,
'LABVIEW-12', 1,
'LABVIEW-114', 1,
'YESTECH-L3-RW1', 1,
'YESTECH-L03-RW2', 1,
'YESTECH-L4-RW125',1
);
foreach my $key (sort(keys(%mdata)))
{
print "$key\n";
}
The output of this code is as follows, and you can see that the sort
order is not what I wanted:
CALIBRATION02
CALIBRATION1
LABVIEW-1
LABVIEW-11
LABVIEW-114
LABVIEW-12
LABVIEW-2
LABVIEW-4
YESTECH-L03-RW2
YESTECH-L3-RW1
YESTECH-L4-RW125
Any ideas on how to get this to come out in the "right" order?
Barry Brevik
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs