[SP-pm] Array? Hashes? Outros?
Eden Cardim
eden at insoli.de
Wed Mar 13 10:43:21 PDT 2013
>>>>> "Marcio" == Marcio <- Google <marciorp em gmail.com>> writes:
Marcio> Na ordenação eu empaquei. O código não dá erro, mais não
Marcio> ordena. Alguma dica? Pesquisei na net, mais não consegui
Marcio> mesmo.
Provavelmente tem a ver com ordenação por string (invés de numérica).
Nesse caso, você precisa converter as strings em números de alguma
forma, e depois ordenar, geralmente se usa uma técnica conhecida como
"schwartzian transform":
my @chaves_ordenadas =
map { $_->[0] } # converte de volta pro valor original
sort { $a->[1] <=> $b->[1] } # compara usando a parte numérica
map { [$_, /(\d+)/] } # pra cada chave, criar um array com 2 elementos:
# $_->[0] contém o valor original
# $_->[1] contém o valor numérico
keys %registros;
my @registros_ordenados
= @registros{@chaves_ordenadas}; # retorna os registros na ordem das chaves
--
Eden Cardim -- Insolide Soluções de TI Ltda.
+55 11 9644 8225
http://insoli.de
More information about the SaoPaulo-pm
mailing list