Zeichen in Textdatei ersetzen via Powershell

crashzero
Goto Top
Moin,
ich kriege es nicht hin in einer vorhandenen Textdatei ein bestimmtes Zeichen durch einen Unterstrich _ zu ersetzen.

Meine Datei :

Meine Powershellzeile :


Ich bekomme nur eine Ausgabe wie :

(Vor dem "TEST" ist das Leerzeichen eingesetzt).

Was mache ich falsch ?

Content-Key: 1747762075

Url: https://administrator.de/contentid/1747762075

Ausgedruckt am: 17.05.2022 um 19:05 Uhr

Mitglied: colinardo
Lösung colinardo 21.01.2022 aktualisiert um 17:25:18 Uhr
Goto Top
Servus again @Crashzero ,
Was mache ich falsch ?
du musst das ^ (Caret) mit einem Backslash escapen (\^) wenn du den -replace Operator nutzen willst, denn dieser nutzt Regular-Expression Syntax und in dieser bedeutet das ^ = "Anfang eines Strings" und das ist ein Non-Capturing Sonderzeichen in Regular Expression Syntax, um es literal zu verwenden musst du es escapen.
Anfangs- und Endezeichen
Alternative ohne -replace Operator und der "normalen" Replace Methode der String Klasse, hier brauchst du nicht escapen da diese die Zeichenkette als Literal verarbeitet.
Als Wochenend-Lektüre empfohlen:
Powershell Link-Leitfaden für Anfänger
Regular Expressions Tutorial

Grüße Uwe
Mitglied: Crashzero
Crashzero 21.01.2022 um 17:43:14 Uhr
Goto Top
Super, klappt, vielen Dank.