http://qs321.pair.com?node_id=521135

BUU has asked for the wisdom of the Perl Monks concerning the following question:

I have a series of strings that look much like:
0/1/2/3 0 0/4/5/6 0/4 0/1 0/1/2 0/4/5 0/10/111/145 0/10/111 0/10
Now I'm trying to sort them. The correct order is:
0 0/1 0/1/2 0/1/2/3 0/4 0/4/5 0/4/5/6 0/10 0/10/111 0/10/111/145
Perl's default sort using cmp comes very close, but it places 0/10 before 0/4, and it should not. I've found a really ugly solution involving a couple of for loops and such things, but I was really hoping for anything faster and cleaner. Any ideas?