Je programme en Perl depuis plusieurs années, même si ce n'est que sporadiquement ma langue maternelle. Parce que je passe souvent des mois sans écrire de perl, je me fie énormément à mon livre Camel Book pour me rappeler comment faire les choses. Cependant, lorsque je copie textuellement des recettes sans comprendre, cela me dérange. Ceci est l'un des plus épineux: A la page 154 de la 3e édition de chameau, il est un exemple pour « modifier les chaînes en passant qui se lit comme suit:À quoi sert l'opérateur de substitution Perl?
($lotr = $hobbit) =~ s/Bilbo/Frodo/g;
Q1) ce qui se passe ici? Q2) Cette syntaxe quasi-magique est-elle nécessaire pour une opération de base telle que "prendre une chaîne de $ a, la modifier avec une regex, placer le résultat dans $ b"?
Q3) Comment faire cette opération en utilisant la variable par défaut de la boucle comme chaîne initiale?
Excuses d'avance aux rêveurs Perl pour qui ce qui précède semble parfaitement naturel.
Cette réponse est correcte. Je le tapais comme cela a été posté. Il (la solution) par le chemin m'a pris une recherche de Google pour trouver. – Paul
@ D.Shawley. Jees mate. D'après ce que vous avez dit plus haut, pourquoi $ _ serait-il modifié? "copiez la chaîne de $ a ($ _) ... dans $ b ($ lotr) et modifiez $ b ($ lotr) avec la regex, placez le résultat dans $ b ($ lotr)". Aucune magie impliquée avec $ _ du tout. –
Je vote pour ceci, pour être la réponse acceptée. –