![]() |
|
|
google unix.com
|
|||||||
| Forums | S'inscrire | Forum Rules | Liens | Albums | FAQ | Liste des membres | Calendrier | Recherche | Aujourd'hui, les postes | Marquer les forums comme lus |
| De programmation et de script Shell Posez vos questions à propos de KSH, CSH, SH, BASH, PERL, PHP, SED, awk et d'autres scripts shell et les langages de script shell ici. |
Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
|
||||
| Fil | Thread Starter | Forum | Réponses | Last Post |
| chaîne de tri ASCII contenant des numéros | GKnight | UNIX pour les nuls Questions et réponses | 8 | 04-24-2009 09:26 AM |
| Tri d'une adresse à cordes | Minimum | De programmation et de script Shell | 0 | 09-13-2008 05:15 PM |
| PERL données - le tri | eagercyber | De programmation et de script Shell | 3 | 06-20-2008 04:02 AM |
| perl tri | joeyg | De programmation et de script Shell | 5 | 02-15-2008 03:56 PM |
| Une chaîne de tri | Khoomfire | UNIX for Advanced & Expert Users | 14 | 01-18-2006 04:34 AM |
![]() |
|
|
LinkBack | Thread Tools | Recherche sur ce Thread | Rate Thread | Modes d'affichage |
|
|
|
||||
|
Perl: le tri par chaîne
J'ai un tableau complet de la chaîne de valeurs qui doivent être triés, mais si la valeur commence avec (regex) 0 ^ [SV], il devrait être au début du tableau. Sinon, le tableau doit être trié en utilisant normalement ascii genre.
S'il vous plaît, aidez-moi à créer des sous pour passer à la fonction de tri. |
|
||||
|
Voici une idée
1) obtenu par chaque élément du tableau, pour vérifier ^ 0 [SV], si oui, à pousser array1. dans le même temps, ceux qui ne sont pas ^ 0 [SV], à pousser array2 2) sorte array1 (en utilisant la fonction de tri), et array2 3) joindre à la nouvelle tableaux ensemble, en mettant array2 derrière array1 |
|
|||||
|
Ecrivez votre propre sous-espèce, de plus en perldoc-f sort
|
|
||||
|
Citation:
Code:
sub Bysite {
if ( $a =~ /^0[SV]/ ) {
return -1;
}
elsif ( $b =~ /^0[SV]/ ) {
return 1;
}
lc($a) cmp lc($b);
}
@array = sort Bysite @array;
|
|
||||
|
Citation:
0S09 0S22 0V54 0V72 0A13 0H98 0L43 EL24 STB45 il trie un peu différemment: 0S22 <-- 0S09 <-- 0V54 0V72 0A13 0H98 0L43 EL24 STB45 mais peut-être assez proche est OK ![]() |
![]() |
| Bookmarks |
| Thread Tools | Recherche sur ce Thread |
| Modes d'affichage | Rate this thread |
|
|