Suchen und Ersetzen in TXT Dateien - Nummerierung pro Zeile neu setzen per Script
Servus. Vielleicht hat einer von euch eine weitere Idee...
Beispiel: Ich habe eine TXT Datei die z.B. so einen Inhalt hat:
01 | TEXT etc.
01 | TEXT etc.
02 | TEXT etc.
02 | TEXT etc.
02 | TEXT etc.
03 | TEXT etc.
Relevant sind die Aufzählungen pro Zeile, die geändert werden müssen.
Ziel ist es die Zeilen neu zu nummerieren.
Ziel soll das sein:
01 | TEXT etc.
02 | TEXT etc.
03 | TEXT etc.
04 | TEXT etc.
05 | TEXT etc.
06 | TEXT etc.
Ich habe es erst mit Notepad++ | Suchen und Ersetzen + Regex versucht, aber damit komme ich leider nicht weiter.
Das ersetzen funktioniert zwar mit "^\d+(-\d+)?\s", aber eine neue Nummerierung geht auch nur mit den umständlichen TextFX und mehrere
weitere Schritte.
Powerhell hilft zwar auch mit
gc 'Z:\1\test.txt' | %{$_[3..500] -join ''} | out-file 'Z:\1\test1.txt'
um die Nummerierung vorerst zu entfernen, aber wie ich mit Powershell die neue Nummerierung pro Zeile dann hineinschreiben kann habe ich bisher nicht herausgefunden.
TextPad hilft dann zwar mit (Suchen und Ersetzen) ^ und \i weiter und man kommt dann endlich zum Ziel, aber das alles ist sehr umständlich
besonders wenn man zig Dateien bearbeiten möchte.
Am liebsten wäre mir ein Batch wo ich die Dateien mit einem Schritt bearbeiten kann (gern die TXT Datei per Drag und Drop auf die .cmd ziehen und fertig)
Hat jemand vielleicht eine weitere nicht so aufwendige Lösung?
Ich würde mich sehr über eure Hilfe freuen.
Vielen Dank.
Beispiel: Ich habe eine TXT Datei die z.B. so einen Inhalt hat:
01 | TEXT etc.
01 | TEXT etc.
02 | TEXT etc.
02 | TEXT etc.
02 | TEXT etc.
03 | TEXT etc.
Relevant sind die Aufzählungen pro Zeile, die geändert werden müssen.
Ziel ist es die Zeilen neu zu nummerieren.
Ziel soll das sein:
01 | TEXT etc.
02 | TEXT etc.
03 | TEXT etc.
04 | TEXT etc.
05 | TEXT etc.
06 | TEXT etc.
Ich habe es erst mit Notepad++ | Suchen und Ersetzen + Regex versucht, aber damit komme ich leider nicht weiter.
Das ersetzen funktioniert zwar mit "^\d+(-\d+)?\s", aber eine neue Nummerierung geht auch nur mit den umständlichen TextFX und mehrere
weitere Schritte.
Powerhell hilft zwar auch mit
gc 'Z:\1\test.txt' | %{$_[3..500] -join ''} | out-file 'Z:\1\test1.txt'
um die Nummerierung vorerst zu entfernen, aber wie ich mit Powershell die neue Nummerierung pro Zeile dann hineinschreiben kann habe ich bisher nicht herausgefunden.
TextPad hilft dann zwar mit (Suchen und Ersetzen) ^ und \i weiter und man kommt dann endlich zum Ziel, aber das alles ist sehr umständlich
besonders wenn man zig Dateien bearbeiten möchte.
Am liebsten wäre mir ein Batch wo ich die Dateien mit einem Schritt bearbeiten kann (gern die TXT Datei per Drag und Drop auf die .cmd ziehen und fertig)
Hat jemand vielleicht eine weitere nicht so aufwendige Lösung?
Ich würde mich sehr über eure Hilfe freuen.
Vielen Dank.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 611145
Url: https://administrator.de/contentid/611145
Ausgedruckt am: 19.11.2024 um 05:11 Uhr
2 Kommentare
Neuester Kommentar
Bidde
https://tio.run/##K8gvTy0qzkjNyfn/30GJy8BQoUYhxDUiRCG1JFkPg2tECteYalwlBy ...
https://tio.run/##K8gvTy0qzkjNyfn/30GJy8BQoUYhxDUiRCG1JFkPg2tECteYalwlBy ...
gc test.txt |%{$cnt=0}{$_ -replace '^\d+',("{0:D2}" -f ++$cnt)} | sc test_neu.txt