PowerShell:
Zeichenketten verknüpfen

How to:

# Variante 1: Plus-Operator (+)
$name = "Welt"
$greeting = "Hallo, " + $name + "!"
Write-Host $greeting  # Ausgabe: Hallo, Welt!

# Variante 2: Format-Operator (-f)
$greetingTemplate = "Hallo, {0}!"
$greeting = $greetingTemplate -f $name
Write-Host $greeting  # Ausgabe: Hallo, Welt!

# Variante 3: Join-Operator
$words = 'Hallo', 'Welt'
$greeting = [String]::Join(", ", $words) + "!"
Write-Host $greeting  # Ausgabe: Hallo, Welt!

# Variante 4: Interpolation mit Double Quotes (")
$greeting = "Hallo, $name!"
Write-Host $greeting  # Ausgabe: Hallo, Welt!

Deep Dive

String-Konkatenation ist so alt wie die Programmierung selbst und es gibt viele Wege, dies in PowerShell zu tun, wie etwa mit dem Plus-Operator, dem Format-Operator, der Join-Methode oder String-Interpolation. Der Plus-Operator ist einfach und direkt, kann aber ineffizient sein bei der Konkatenation vieler Strings. Der Format-Operator bietet strukturierte String-Masken, ist aber weniger intuitiv. String-Interpolation ist ab PowerShell 5.0 verfügbar und ist lesbarer und effizienter für viele Anwendungsfälle. Alternative Methoden wie StringBuilder aus dem .NET Framework sind für Szenarien mit sehr vielen Konkatenationen nützlich, um Performance zu optimieren.

Bei der Arbeit mit Strings in PowerShell sollte auf den Speicherverbrauch und auf die Performance geachtet werden. Große und komplexe String-Operationen können das Programm verlangsamen. Für komplexe Szenarien ist das Arbeiten mit StringBuilder oder ähnlichen Konstrukten aus dem .NET Framework empfehlenswert.

See Also