in reply to sorting with substrings

Update: Oh dear, this is what you get for posting first thing in the morning when you're still half-asleep. I just re-read your question and realised that the below doesn't actually give the desired output :(

Sort::Naturally will handle this job, and is certainly a much simpler solution.

#!/usr/bin/perl -w use strict; use Sort::Naturally; my @unsorted = <DATA>; my @sorted = nsort(@unsorted); print @sorted; __DATA__ workstation_1_1 voiceserver_1_1 workstation_1_2 voiceserver_1_2

Gives...

voiceserver_1_1 voiceserver_1_2 workstation_1_1 workstation_1_2

Note that while this is much simpler than the other solutions, it may not necessarily be the most efficient. If you're only dealing with a relatively small dataset this probably isn't a concern. Otherwise, you might need to do some Benchmarking.

Hope this helps,
Darren :)