Bonjour,
j'ai un petit problème de syntaxe a priori, et je n'arrive pas a trouver de solution sur l'interweb...
Je cherche à exécuter un code permettant de substituer des caractères hexadécimaux dans une chaine perl. Jusque la (et même par la suite), rien de bien compliqué :
$_ =~ s/\x{0021}/\x{00A7}/
Fonctionne bien.
Mais, j'aimerais pouvoir utiliser des variables dans mon opération de substitution, et je n'arrive pas a me figurer la bonne syntaxe 
$charIN contient la valeur du codepoint à modifier, par exemple 0021 et $charOUT contient la valeur du codepoint qui le remplacera.
J'ai essayé naïvement:
$_ =~ s/\x{$charIN}/\x{$charOUT}/
et la c'est le drame.
Il semble que l'interpréteur considère le $ de $charOUT comme un digit hexadécimal, plutot que d’injecter la valeur de la variable $charOUT.
Voila, si quelqu'un à une piste, je suis preneur.
Merci d'avance !
Partager