Merkkijonon interpolointi

PowerShell:
Merkkijonon interpolointi

How to: (Kuinka tehdä:)

# Perusesimerkki
$name = 'Heikki'
$age = 32
$greeting = "Hei, nimeni on $name ja olen $age vuotta vanha."
Write-Output $greeting

Tuloste: Hei, nimeni on Heikki ja olen 32 vuotta vanha.

# Ilmaisuja käyttäen
$items = 10
$totalCost = 19.99
$receipt = "Sinun {0} tuotetta maksaa yhteensä {1:C}." -f $items, $totalCost
Write-Output $receipt

Tuloste: Sinun 10 tuotetta maksaa yhteensä 19,99 €.

# Here-stringin sisällä
$scriptBlock = {
    param($userName)
    @"
Käyttäjän '$userName' prosessit:
$(Get-Process -user $userName)
"@
}
$report = & $scriptBlock -userName 'Mikko'
Write-Output $report

Deep Dive (Syväsukellus)

Stringien interpolointi otettiin käyttöön PowerShellissä version 2.0 aikaan ja sitä on sen jälkeen käytetty laajalti. Vaihtoehtona on käyttää -f operaattoria tai yhdistellä stringejä plussa (+) merkillä, mutta nämä voivat olla sekavampia ja vähemmän tehokkaita. Interpoloitavat alueet merkitään $-merkillä tai laajennetussa merkkijonossa käyttäen “@-merkkijonoja”. PowerShell laskee ja korvaa muuttujat ja lausekkeet automaattisesti merkkijonon sisällä.

See Also (Katso Myös)