Ruby:
Interpolation de chaînes de caractères
Comment faire :
prenom = "Marie"
age = 30
# Interpolation avec des guillemets doubles
message = "Bonjour, je m'appelle #{prenom} et j'ai #{age} ans."
puts message
Sortie :
Bonjour, je m'appelle Marie et j'ai 30 ans.
# Utilisation d'expressions
heure = 9
message = "Il est #{heure > 12 ? heure - 12 : heure}h#{'PM' if heure >= 12 else 'AM'}."
puts message
Sortie :
Il est 9hAM.
Exploration plus profonde
Historiquement, l’interpolation de chaînes est un concept adopté par de nombreux langages de programmation, incluant Perl et PHP, simplifiant la concaténation. En Ruby, elle est particulièrement flexible grâce aux guillemets doubles qui reconnaissent les portions de code entre #{}
comme du Ruby à évaluer.
Les alternatives sans interpolation incluent la concaténation avec +
ou l’usage de la méthode sprintf
ou %
. Ces méthodes sont plus verboses et moins intuitives.
Ruby interne convertit le code interpolé en une concaténation de chaînes, optimisée pour la performance.
Voir aussi
- Ruby Documentation sur l’interpolation : Ruby-Doc String Interpolation
- Discussion sur l’interpolation vs concaténation : Stack Overflow