La syntaxe de la fonction de substitution est analogue à celle
utilisée par sed, vi, ..., mises à part les quelques
différences syntaxiques d'écriture des regexps. De manière analogue à
la fonction de comparaison, la fonction de substitution s'applique par
défaut à la variable $_
. Pour la faire s'appliquer à une
variable quelconque, il faut utiliser la notation :
Les modificateurs qui suivent l'expression sont identiques à ceux applicables à la fonction de comparaison.
Un nouveau modificateur est disponible : e. Il précise que l'expression de remplacement est une expression à évaluer, ce qui permet d'utiliser le résultat d'une opération dans la chaîne de remplacement.
Par exemple, pour convertir des caractères du type %
xx où
xx est un code ASCII en hexadécimal dans le caractère
correspondant, il suffit d'écrire:
Prenez votre temps pour essayer de comprendre le fonctionnement de cette expression régulière. Ensuite, essayez de comprendre les transformations qui permettent d'arriver à l'expression équivalente :