Rechercher : dans
Par :

PERL créer un tableau 2D a partir d'un txt

Dernière réponse le 15 mai 2008 à 17:13:22 ksper, le 27 mar 2008 à 05:48:33 
 Signaler ce message aux modérateurs

Bonjour a tous,

Je débute en perl et pour réaliser un traitement sur des valeurs contenues dans un fichier texte; j'aurais besoin des les mettre dans un tableau 2D.

Voici comment le fichier texte se présente :

[code]
premier nom 123 987 876 1452
le-deux 762 123 876
troisième/nom 762 789 0981
un (dernier) 999 526 127
...
/code

et voici le genre le tableau que je voudrais obtenir :

[code]
@data = (["premier nom",123,987,876,1452],
["le-deux",762,123,876],
["troisième/nom",762,789,0981],
["un (dernier)",999,526,127],
... )

/code

En gros, j'aimerais que tous les :
$data[x][O] me renvoient les noms. Et les

$data[x][y] me renvoient les valeurs. (y>0).


J'ai essayé de faire ca avec des push mais je ne m'en sors pas. les noms sont uniquements composés de lettres et caractère / , ( ) -
et les valeur uniquement des chiffres.

Si quelqu'un pouvait me donner un coup de main...

Merci

Configuration: Linux
Firefox 2.0.0.12

Meilleures réponses pour « PERL créer un tableau 2D a partir d'un txt » dans :
Partage de fichiers en réseau local sous Windows VoirAvant toute chose, il est nécessaire de mettre en réseau local les ordinateurs pour lesquels un partage de fichiers doit être mis en oeuvre : créer un réseau local installation de carte réseau configurer un réseau pour windows XP tests des...
GParted (Gnome partition editor) VoirIntroduction Qu'est-ce que GParted ? Quel est le principal intérêt dans l'utilisation de GParted? Où peut-on se procurer GParted? Comment utiliser GParted ? Réduire la partition NTFS Créer de nouvelles partitions Astuce supplémentaire...
Comment faire son site à partir d'un portail Web (GuppY) VoirVous voulez créer un site pour partager des fichiers avec vos amis, pour avoir un forum, ... ? Vous ne vous y connaissez pas du tout en HTML, en PHP... ? Ce n'est pas grave ! Il y a ce qu'on appelle des portails Web. Entre autres, il y a GuppY...
Les variables avec Perl VoirConcept de variable avec Perl Une variable est un objet repéré par son nom, pouvant contenir des données, qui pourront être modifiées lors de l'exécution du programme. Les variables en langage Perl peuvent être de trois...

1

 elbeho, le 15 mai 2008 à 17:13:22

Salut

(s'il est encore temps)
Quelque chose comme ca :

while ( <> )
    {
    my ($a, $b);
    if ( /^([^\d]+)\s+(.*)$/ )
        {
        $a = $1;
        $b = $2;
        push @data, [ $a , split (/ /, $b) ];
        }
    }


Notez les [ ] dans le push.
Et il faut peut-etre ameliorer la regexp du if()
Et voir si un hash (%data) avec le nom en cle n'irait pas mieux... mais ca depend du probleme a resoudre :-)

Cordialement

Répondre à elbeho
Collection CommentÇaMarche.net