Escape-Sonderzeichen in PowerShell
Wenn Sie an PowerShell arbeiten, müssen Sie möglicherweise Sonderzeichen wie *\~;(%?.:@/
maskieren. Dieses Tutorial zeigt Ihnen, wie Sie solche Zeichen in PowerShell mit dem Operator -Replace
entfernen und maskieren.
Verwenden Sie den Operator -Replace
, um Sonderzeichen in PowerShell zu maskieren
Der Operator -Replace
ersetzt Texte oder Zeichen in PowerShell. Sie können damit Texte oder Zeichen aus der Zeichenfolge entfernen.
Der Operator -Replace
erfordert zwei Argumente: die zu suchende Zeichenfolge und die zu ersetzende Zeichenfolge aus der gegebenen Eingabe.
Dies ist unsere Zeichenfolgenvariable, die die folgenden Sonderzeichen enthält.
$new = "p*o$#we%r"
Um alle Sonderzeichen aus der Zeichenfolge zu entfernen, können Sie diese durch eine leere Zeichenfolge ersetzen. Der Backslash \
als Fluchtzeichen entspricht dem nicht erkannten Zeichen.
Zum Beispiel entspricht \*
einem Sternchen *
.
$new = $new -replace "\*",""
$new = $new -replace "\$",""
$new = $new -replace "\#",""
$new = $new -replace "%",""
$new
Ausgang:
power
Das [RegEx]::Escape("input")
gibt die Escape-Codes zurück, die Ihnen helfen, Sonderzeichen in einem String zu maskieren.
[regex]::Escape("p*o$#we%r")
Ausgang:
p\*o\$\#we%r