@origarray= @origarray[ do { my @by= map {(split(/\|/,$_,3))[2]} @origarray; sort {$by[$a] cmp $by[$b]} 0..$#origarray } ];