PERL extraction valeurs

Bonjour 8)

Je m’essaye à PERL depuis quelques jours mais je butte sur comment extraire une ou des valeurs d’une variable.

Voici le contenu de la variable à traiter :

N°           Val1-1           Val2-1          Val3-1        Val4-1
a0/1         1370380983         224275        5977182       11519416
a0/2         2950137424       10842680        5901202       11460799

N°           Val1-2           Val2-2          Val3-2        Val4-2
a0/1         1092839685         132161        5280599        9771119
a0/2         35382434282       89595306        1172398         933271

Je voudrais par exemple pour le N° a0/2 récupérer les valeurs Val1-1 et Val1-2 afin de pouvoir afficher le résultat de ces valeurs.

Avez-vous une piste ou une idée ?

Merci

Bonjour,

Regarde du coté de la fonction split.
Exemple pour récupérer les champs dans un tableu, le caractère de séparation étant l’espace :

Bonjour yap22,

Merci pour ta réponse, j’utilise déjà le split mais je n’arrive pas à récupérer la ligne qui m’interesse…

J’essaye de voir si je peux utiliser grep :115

Je ne comprends pas très bien. C’est un fichier que tu lie ?

Ça peut-être ?

$ligne = "abc\ndef\nghi\n"; @lignes = split /\n/, $ligne; foreach (@lignes) { @champs = split /\s+/, $_; print join(" *** ", @champs); }

Bonjour,

Pour ton problème, je pense qu’il faut trouver une façon de structurer les données lues dans le fichier.
Par exemple, faire une table de hash avec comme clé un couple du type “a0/1-ValX-Y” …

Sinon voici un bout de code qui lie chaque ligne et découpe celle-ci.
Chaque éléments de la ligne sont stockés dans un array.

J’espère t’avoir aidé, bon code …

#!/usr/bin/perl

use strict;
use warnings;

my @array;
my $val;

open FILE, "var.txt";

while (<FILE>) {

   @array = split(" ", $_);

   foreach $val (@array) {
      print "<$val>";
   }
   print "\n--";
}
close FILE;