Zeilen Bearbeitung
Ich bin relativ neu in eurem Forum und habe trotzdem direkt zwei Fragen :P.
Also Ich muss ein paar Texte bearbeiten.
Diese Texte sind meistens so aufgebaut
Text1:text1
Text2:text2
Text3:
Text4:text4
Da in der Zeile "Text3" das Format nicht stimmt (Format sollte Text3:text3" sein) möchte ich diese Zeilen automatisch löschen.
Also so dass ich später sowas hab:
Text1:text1
Text2:text2
Text4:text4
Also im Endeffekt soll jede Zeile, wo nach dem Doppelpunkt nichts mehr steht, gelöscht werden.
Und dann bräuchte ich nochmal eure Hilfe:
Wenn in einer Zeile kein bestimmtes Zeichen vorkommt, soll sie auch gelöscht werden.
Wenn z.B ein Text so aufgebaut ist
Text1@text1
Text2text2
Text3@text3
Also hier wäre es z.B das @ Zeichen was da nicht vorkommt. Diese Zeile (Text2text2) sollte automatisch gelöscht werden.
Ich werde hier nochmal später vorbeischauen. Wenn ihr Fragen habt, schreibt einfach rein =) und wer die antwort kennt kann auch gleich reinschreiben :D
Vielen dank für eure Hilfe
Also Ich muss ein paar Texte bearbeiten.
Diese Texte sind meistens so aufgebaut
Text1:text1
Text2:text2
Text3:
Text4:text4
Da in der Zeile "Text3" das Format nicht stimmt (Format sollte Text3:text3" sein) möchte ich diese Zeilen automatisch löschen.
Also so dass ich später sowas hab:
Text1:text1
Text2:text2
Text4:text4
Also im Endeffekt soll jede Zeile, wo nach dem Doppelpunkt nichts mehr steht, gelöscht werden.
Und dann bräuchte ich nochmal eure Hilfe:
Wenn in einer Zeile kein bestimmtes Zeichen vorkommt, soll sie auch gelöscht werden.
Wenn z.B ein Text so aufgebaut ist
Text1@text1
Text2text2
Text3@text3
Also hier wäre es z.B das @ Zeichen was da nicht vorkommt. Diese Zeile (Text2text2) sollte automatisch gelöscht werden.
Ich werde hier nochmal später vorbeischauen. Wenn ihr Fragen habt, schreibt einfach rein =) und wer die antwort kennt kann auch gleich reinschreiben :D
Vielen dank für eure Hilfe
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 122498
Url: https://administrator.de/forum/zeilen-bearbeitung-122498.html
Ausgedruckt am: 07.05.2025 um 09:05 Uhr
4 Kommentare
Neuester Kommentar
Moin lawlxDD,
wer schickt Dich denn mit solchen kranken Anforderungen los?
Ich meine, lösbar mag das ja sein, aber bis heute nachmittag dachte ich, dass derartige Dateien und vor allem derartige Nachbearbeitungen wenn überhaupt nur ganz am äußersten Rand unserer Galaxie vorkommen.
Und nur ganz, ganz selten unseren kleinen blauen Planeten streifen.
Andererseits...
Guido Westerwelle hat es ja auch irgendwie hierher geschafft.
Was steckt denn da für ein reales Problem dahinter und was für ein abgefahrener Prozess?
Oder ist das Ganze mehr so eine Frage der Art "Ich hab schon oft überlegt, ob ein Meerschweinchen mit einem Toaster auf dem Rücken schwimmen kann?"
Eine mögliche Lösung wäre eine Findstr-Abfrage mit RegEx:
[Demo am CMD-Prompt; ">" kennzeichnet eine einzugebende Zeile]
Das zeigt das Finden aller betreffenden Zeilen.
Das "Löschen" aller Zeilen wäre entsprechend bastlas Beispielen mit Schalter /v statt Schalter /n.
Grüße
Biber
[Edit] Ich bin von ZWEI nicht aufeinanderfolgenden "b"s ausgegangen wie im Beispiel oben.
Nicht von DREI "b"s wie in der Anforderungsbeschreibung.
[/Edit]
wer schickt Dich denn mit solchen kranken Anforderungen los?
Ich meine, lösbar mag das ja sein, aber bis heute nachmittag dachte ich, dass derartige Dateien und vor allem derartige Nachbearbeitungen wenn überhaupt nur ganz am äußersten Rand unserer Galaxie vorkommen.
Und nur ganz, ganz selten unseren kleinen blauen Planeten streifen.
Andererseits...
Guido Westerwelle hat es ja auch irgendwie hierher geschafft.
Was steckt denn da für ein reales Problem dahinter und was für ein abgefahrener Prozess?
Oder ist das Ganze mehr so eine Frage der Art "Ich hab schon oft überlegt, ob ein Meerschweinchen mit einem Toaster auf dem Rücken schwimmen kann?"
Eine mögliche Lösung wäre eine Findstr-Abfrage mit RegEx:
[Demo am CMD-Prompt; ">" kennzeichnet eine einzugebende Zeile]
(=18:20:55 D:\temp=)
>findstr /n /i /R "b[^b].[^b]*b" btestb.txt
2:testBtestBtest
3:testBtestblubb
4:blubb
6:testbtestbtest
(=18:21:56 D:\temp=)
>type btestb.txt
testBtest
testBtestBtest
testBtestblubb
blubb
lubb
testbtestbtest
Das zeigt das Finden aller betreffenden Zeilen.
Das "Löschen" aller Zeilen wäre entsprechend bastlas Beispielen mit Schalter /v statt Schalter /n.
Grüße
Biber
[Edit] Ich bin von ZWEI nicht aufeinanderfolgenden "b"s ausgegangen wie im Beispiel oben.
Nicht von DREI "b"s wie in der Anforderungsbeschreibung.
[/Edit]
Hallo lawlxDD!
3x "B" (oder auch "b") vorkommt, wird die Zeile damit herausgefiltert:
Info dazu mit "findstr /?" bzw mit einer Suche nach "regular expression" / "reguläre Ausdrücke" ...
Grüße
bastla
[Edit] @Biber: Dass ich, als ich mit meiner Antwort begonnen habe, Deinen Kommentar nicht gesehen habe, lässt zwei Schlüsse zu, von denen mir keiner gefällt ... :[/Edit]
Jetzt müsste die Zeile "testBtestBtest" gelöscht werden.
Wenn tatsächlich findstr /v /i "b.*b.*b" DateiAlt.txt>DateiNeu.txt
Grüße
bastla
[Edit] @Biber: Dass ich, als ich mit meiner Antwort begonnen habe, Deinen Kommentar nicht gesehen habe, lässt zwei Schlüsse zu, von denen mir keiner gefällt ... :[/Edit]