Elixir:
Interpolera en sträng
How to (Hur till)
name = "Världen"
greeting = "Hej, #{name}!"
IO.puts greeting
Output:
Hej, Världen!
Mer komplex användning:
price = 100
currency = "SEK"
message = "Det totala priset är #{price * 1.25} #{currency} inklusive moms."
IO.puts message
Output:
Det totala priset är 125.0 SEK inklusive moms.
Deep Dive (Djupdykning)
Interpolering av strängar är inget nytt. De flesta programmeringsspråk har det och i Elixir hanteras det snyggt med #{…}. Alternativ till stränginterpolering innefattar sammanfogning av strängar med <>
eller att använda String.concat/1
. Implementeringsmässigt använder Elixir binärer för att representera strängar, vilket gör operationen effektiv. Att interpolera en sträng i Elixir är säkert då det inte finns någon risk för injektionsattacker som med SQL-injektioner.