Umformen einer txt mit Powershell
Hallo,
ich habe ein PowerShell-Skript mit dem ich eine *.txt umforme.
Das funktioniert inzwischen soweit auch ganz gut.
jetzt möchte ich zwei Sachen noch ändern, komme hier aber nicht weiter.
mit diesem Code werden in einem bestimmten Bereich alle Zeilen gelöscht die nicht "ABC" enthalten.
Ich würde dies gerne um ein Kriterium erweitern, nämlich dass auch die Zeilen, welche "XYZ" enthalten, erhalten bleiben
Mein zweites Problem ist, dass ich für einen bestimmten Abschnitt der *.txt an jedes Zeilenende "123" anhängen will.
Kann mir hier jemand helfen?
Viele Grüße
ich habe ein PowerShell-Skript mit dem ich eine *.txt umforme.
Das funktioniert inzwischen soweit auch ganz gut.
jetzt möchte ich zwei Sachen noch ändern, komme hier aber nicht weiter.
mit diesem Code werden in einem bestimmten Bereich alle Zeilen gelöscht die nicht "ABC" enthalten.
?{$_ -match 'ABC'}
Mein zweites Problem ist, dass ich für einen bestimmten Abschnitt der *.txt an jedes Zeilenende "123" anhängen will.
Kann mir hier jemand helfen?
Viele Grüße
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 665410
Url: https://administrator.de/contentid/665410
Ausgedruckt am: 23.11.2024 um 18:11 Uhr
4 Kommentare
Neuester Kommentar
Moin,
Deine Suche/match nach "XYZ" könntest Du mit einem -or in derselben Zeile verknüpfen:
VG
schleeke
Deine Suche/match nach "XYZ" könntest Du mit einem -or in derselben Zeile verknüpfen:
?{($_ -match 'ABC') -or ($_ -match 'XYZ')}
VG
schleeke
Zitat von @143611:
Moin,
Deine Suche/match nach "XYZ" könntest Du mit einem -or in derselben Zeile verknüpfen:
Oder da hier sowieso direkt mit Regex gearbeitet wird geht's kürzer soMoin,
Deine Suche/match nach "XYZ" könntest Du mit einem -or in derselben Zeile verknüpfen:
?{$_ -match 'ABC|XYZ'}
Zum Anhängen von Strings kann man auch einfach ne Regex Replace nehmen
Bsp. für Zeilen die mit ABC beginnen ein 123 anhängen
$text = [Regex]::Replace($text,'(?im)^(ABC.*)','$1123')
Oder da hier sowieso direkt mit Regex gearbeitet wird geht's kürzer so
>?{$_ -match 'ABC|XYZ'}
>
...ach ja, da war ja was - nice! Vergess' den ganzen RegEx-Kram regelmäßig, obwohl man best. 80% der string-Manipulationen damit abfrühstücken könnte...