Powershell - In Textdatei suchen und ersetzen
Hallo Zusammen,
ich habe einen Textdatei mit vielen aufeinander folgendenden Leerzeichen und wo an diversen Stellen Überschriften stehen.
Ungefähr so:
Ich möchte gerne alle beginnenden Leerzeichen entfernen und alle Überschriften (Thema..).
Alles was ich bisher versucht habe, hat leider nicht das gewünschte Ergebnis gebracht.
Dachte etwas in diese Richtung:
1. Zeilen der Textdatei zählen
2. Per For-Schleife in Arrays packen
3. Mit TrimStart() Leerzeichen entfernen?
4. Mit Where-Object irgendwie mit - like "Thema*" die Array Variable löschen?
5. Alle Arrays in die vorhandenen Textdatei schreiben
Evtl. geht's auch einfacher und übersichtlicher?
Würde mich über jede Hilfe freuen.
Vielen Dank.
ich habe einen Textdatei mit vielen aufeinander folgendenden Leerzeichen und wo an diversen Stellen Überschriften stehen.
Ungefähr so:
Thema1 - Hamburg
Sehenswürdigkeiten..
Lokale..
Parkplätze..
Thema2 - Köln
Sehenswürdigkeiten..
Lokle..
Parkplätze..
Ich möchte gerne alle beginnenden Leerzeichen entfernen und alle Überschriften (Thema..).
Alles was ich bisher versucht habe, hat leider nicht das gewünschte Ergebnis gebracht.
Dachte etwas in diese Richtung:
1. Zeilen der Textdatei zählen
2. Per For-Schleife in Arrays packen
3. Mit TrimStart() Leerzeichen entfernen?
4. Mit Where-Object irgendwie mit - like "Thema*" die Array Variable löschen?
5. Alle Arrays in die vorhandenen Textdatei schreiben
Evtl. geht's auch einfacher und übersichtlicher?
Würde mich über jede Hilfe freuen.
Vielen Dank.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 322830
Url: https://administrator.de/contentid/322830
Ausgedruckt am: 19.03.2024 um 03:03 Uhr
5 Kommentare
Neuester Kommentar
Evtl. geht's auch einfacher und übersichtlicher?
Mit ein bisschen Regex keine große Sache (gc 'c:\datei.txt' | ?{$_ -notmatch '^\s*$|^\s*Thema.*'}) -replace '^\s+','' | set-content 'c:\datei.txt'
Gruß
Zitat von @Raaja89:
Gibt es auch die Möglichkeit weitere Zeilen mit anderen Begriffen verschwinden zu lassen?
Klar, einfach den Regex anpassen das (|) trennt die einzelnen Patterns (OR-Verknüpfung) voneinander.Gibt es auch die Möglichkeit weitere Zeilen mit anderen Begriffen verschwinden zu lassen?
(gc 'c:\datei.txt' | ?{$_ -notmatch '^\s*$|Thema|Dritte Überschrift'}) -replace '^\s+','' | set-content 'c:\datei.txt'