[Perl]-cadrage de valeur

[Résolu/Fermé]
Signaler
Messages postés
23763
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
-
 lami20j -
Bonjour,

j'ai une variable dans un script perl que je souhaite cadrer à droite à l'affichage, mais malgré tous mes efforts, elle reste désespérément cadrée à gauche quand elle est purement numérique (c'est une valeur hexa).

J'essaie avec printf ("%5s",$TAB[2]); mais rien n'y fait...

Elle est initialisée par la ligne : $TAB[2] =~ s/([a-fA-F0-9]{2})/chr(hex $1)/eg;

Pourquoi cela se fait-il et comment solutionner ?

Merci d'avance.

6 réponses

Messages postés
18304
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
26 octobre 2021
5 416
hello
il y a peut-être des espaces qui la "pousse" à gauche, essayer pour voir
printf ("++%5s++",$TAB[2]);
Messages postés
23763
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
3 124
Ben non justement, elle est vraiment "brute"...

J'ai d'autres valeurs hexa, avec un espace devant, qui sont correctement cadrées...
Messages postés
18304
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
26 octobre 2021
5 416
mais si les espace sont après ? "0a "
Messages postés
23763
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
13 janvier 2020
3 124
Laisse tomber, c'est une conn**$*$* de ma part, j'avais mis un espace à la fin pour séparer des autres champs et c'est lui qui mettait le souk :

printf ("%5s",$TAB[2])." ";
Salut,

Affiche le résultat de

$TAB[2]=~/(.)/ord($1)/eg;
print "$TAB[2]\n";
Re,

Bon, trop tard, mais tu peux toujours utiliser la fonction ord pour vérifer ce qui ne vas pas.