http://www.perlmonks.org?node_id=539147


in reply to how to sort this?

What do you want to sort it by? Sort it like strings? Like numbers? By extracted integers? Or a combination of all of the above?

Helps to know the requirements before starting an implementation.

Replies are listed 'Best First'.
Re^2: how to sort this?
by sen (Hermit) on Mar 25, 2006 at 05:57 UTC

    hi saint,

    my requirement is to sort by integers. also i need the output as

    @a = (1x1 1x1 1x2 1x12 2x1 4x0 4x1 4x12 10x1 12x1 12x3 22x3);

    Thanks

      Hi sen try this it gives your exact output,

      #!/usr/local/bin/perl @a1 = qw/1x1 1x12 12x3 10x1 4x12 4x1 1x1 22x3 2x1 4x0 12x1 1x2/; @out = sort { (split 'x', $a, 2)[0] <=> (split 'x', $b, 2)[0] } sort { (split 'x', $a, 2)[1] <=> (split 'x', $b, 2)[1] }@a1; print "@out";