in reply to (Golf) Keysort
Here's my lexicographic solution, which comes in at 89 characters (including the call to sort):
If I've understood the hole properly, the definitions of "integer" and "starting with an integer" are a bit tricky. '0' is an integer, but '00' isn't; '0a' starts with an integer, but '00a' doesn't. Thus, '0', '1', '00', 'adam' would be sorted in that order. Have I got that right?sub chipmunk_lexi { sort{(($B)=$b=~($r='^\s*(0|-?[1-9]\d{0,8})(?!\d)'))<=>(($A)=$a=~$r)||$ +A<=>$B||$a cmp$b}@_ }
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Re: (Golf) Keysort
by demerphq (Chancellor) on Feb 18, 2002 at 15:59 UTC |
In Section
Meditations