in reply to Sort names

my @order = ('~', '&', '@', '%', '+', ''); my %order = map { $order[$_] => $_ } 0..$#order; sub nick_cmp { my ($a_p, $a_n) = $a =~ /^([~&\@%+]?)(.*)/s; my ($b_p, $b_n) = $b =~ /^([~&\@%+]?)(.*)/s; $order{$a_p} <=> $order{$b_p} || lc($a_n) cmp lc($b_n) } my @users = qw( goodman hsytva %pisyun [error] Gerich Fair CYCLER ~shurmann &BECHED sp w %sanekdark FIXER lizergin @XUEC ); print "$_\n" for sort nick_cmp @users;
~shurmann &BECHED @XUEC %pisyun %sanekdark [error] CYCLER Fair FIXER Gerich goodman hsytva lizergin sp w

Replies are listed 'Best First'.
Re^2: Sort names
by motzi (Sexton) on May 25, 2010 at 22:45 UTC
    I need to read about cmp. Thank you very much, ikegami.
      What about them isn't clear?