[Date Prev][Date Next][Thread Prev][Thread Next] [Search] [Date Index] [Thread Index]

Re: [FWP] sorting text in human-order



sthoenna@efn.org (Yitzchak Scott-Thoennes) writes:

>       $srt =~ tr/0-9a-z\xe9/a-jA-ZE/;  # uc & sort nums after letters

`10' is going to sort before `2' with that rule. Having done the whole
bitter experience thing with this, may I suggest:

        $srt =~ s/(\d+)/unpack("B32", pack("N",$1))/eg

Which will give you nice 32 bit binary representations of your
numbers, which have leading zeros and will sort properly via cmp. 

If you want a sample of the pain I had working that out, you should've
been at my 12 step perl session at YAPC::Europe.

-- 
Piers


==== Want to unsubscribe from Fun With Perl?  Well, if you insist...
==== Send email to <fwp-request@technofile.org> with message _body_
====   unsubscribe