Bonjour, je ne maîtrise pas du tout la fontion "sort" de Perl mais je souhaiterai faire un tri multiple. J'ai un tableau (@pl) qui contient des lignes du genre:
Code :
- SWITCH1_SYSTEMS:Alpha2:*1647205
- SWITCH2_SYSTEMS:Alpha2:*2323289
- SWITCH1_SYSTEMS:Alpha2:*3014730
- SWITCH2_SYSTEMS:Alpha2:*3437270
|
le nombre apres le caractere "*" correspond à un temps. Bref je souhaite obtenir un tri multiple d'abord sur le nom du switch (tri alphabetique) puis sur le temps (tri numérique) de manière otpimisé.
Le nom du switch se situe avant le premier caracère ":" et le temps apres le caractère "*". Jsais pas si c'est clair mais voici un exmple de tri simple (chronologique) avec mes variables:
Code :
- @pltrie=sort {
- ($reste,$u)=split(/\*/,$a);
- ($reste,$v)=split(/\*/,$b);
- return $u<=>$v;
- }@pl;
|
Si vous avez des solutions à proposer plz