PowerShell:
Löschen von Zeichen, die einem Muster entsprechen
How to:
Lassen wir die Worte und kommen direkt zum Code.
$text = "Hallo Welt 123!"
$pattern = '[0-9]'
$cleanText = $text -replace $pattern, ''
Write-Host $cleanTextAusgabe:
Hallo Welt !Hier wird durch -replace alles entfernt, was auf das Muster [0-9], also alle Ziffern, passt.
Deep Dive
Das Löschen von Zeichen, die einem Muster entsprechen, nutzt die Kraft regulärer Ausdrücke (regular expressions, regex), die seit den 1950er Jahren existieren. In PowerShell wird dies häufig mit dem -replace-Operator erreicht. Alternativ kann man Remove oder Trim verwenden, wenn die Anforderungen einfacher sind, das bedeutet jedoch, auf die Flexibilität von Regex zu verzichten. Die Implementierung von Regex in PowerShell ist effizient und nutzt die .NET System.Text.RegularExpressions-Namespace, was bedeutet, dass alle Methoden und Eigenschaften, die in .NET verfügbar sind, auch in PowerShell verfügbar sind.
See Also
- Microsoft-Dokumentation zu regulären Ausdrücken in .NET: Regular Expression Language - Quick Reference