Tom's Guide > Forum > Programmation > Perl tableau

Perl tableau

Forum Programmation : Perl tableau

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

Je suis débutante en perl et je rencontre beaucoup de difficultés. Je souhaite creer un parcours de graphe en perl. J'ai un fichier de config. Je place chaque ligne du fichier dans un tableau t1. Puis je place chaque caractère de chaque ligne dans un tableau t2. Si je trouve le caractère "m", le caractère suivant doit etre "a".
Le problème c'est lorsque "m" est à la ligne 1 et le "a" à la ligne 2. Je ne sais pas comment ecrire : si "m" est le dernier caractère de la ligne je regarde le premier caractère de la ligne suivante.

Voilà mon code
for ( 0 .. $#t1) { $i = $_ ;
my @t2 = split (// , $t1[$i]) ;

for ( 0 .. $#t2 ) {
$j=$_
if ($t2[$j] =~ /m/) {
print "on a trouvé m; on cherche a\n" ;
$IdxCaractereDeLaLigne = ++$IdxCaractereDeLaLigne;
if ($tableauCaractere[$IdxCaractereDeLaLigne] =~ /'[a-zA-Z0-9]+'/) {
print "on a trouvé a\n" ;
}
else { print "il faut regarder la ligne suivante\n";
next;
}
}

if ($tableauCaractere[$IdxCaractereDeLaLigne] =~ /'[a-zA-Z0-9]+'/) {
print "on a trouve a dans la ligne suivante\n" ;
}
else {
print "ERREURRR! le m n'est pas suivi par a \n";
}
}
}




Merci d'avance.

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

au lieu de les traiter ligne par ligne, commence par en former qu'une chaine:

Code :
  1. # @t: le tableau de ligne
  2. # @car: la suite de caractère
  3. my @car=split ('', join ('', @t));

------------------------------ Ne pas oublier le [resolu] pour finir le sujet.
Penser à voir les tutos, ca peut aider!
Répondre à coca25
Tom's Guide > Forum > Programmation > Perl tableau
Aller à :

Il y a 1423 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens