Notepad++ Löschen zwischen zwei Zeichen

Thorsten76

Newbie
Registriert
Dez. 2021
Beiträge
6
Hallo, ich bin neu hier und heiße Thorsten. Ich habe versucht mich über Google schlau zu machen, was mein Problem anlangt, leider finde ich nicht das richtig oder ich bin zu dumm dafür. Vielleicht könnt ihr mir helfen, deswegen habe ich mich auch hier angemeldet. Für die meisten von euch wird das bestimmt einfach sein und denken was will der Idiot, aber für mich wäre das eine große Hilfe, wenn ihr mir weiterhelfen könntet. Es geht um folgendes, und zwar habe ich mehrere Dateien (mehr als 200) wo ich verschiedene abschnitte Suchen und ersetzen muss. Und diese unterscheiden sich leider in den Dateien. Deswegen möchte ich über Notepad die Stellen markieren, zum Beispiel mit "##" bis "##" alles löschen und ersetzen. Ich komme aber einfach nicht an mein Ziel.

Hoffe hier auf Hilfe die mir weiter hilft. Danke euch schon mal im Voraus.

Anbei lade ich eine dieser Datei Original hoch und eine, wo ich mal als Beispiel die "##" eingefügt habe.
 

Anhänge

  • Test.txt
    Test.txt
    55 KB · Aufrufe: 372
  • Löschen zwischen ##.png
    Löschen zwischen ##.png
    50,2 KB · Aufrufe: 582
falls das via wsl ne option ist:
sed -i 's/old-text/new-text/g' file.txt

oder halt ps:
get-content somefile.txt | %{$_ -replace "expression","replace"}


in jedem fall kannst du dir ne regex basteln :)
 
Stichwort wäre hier wohl eine RegEx-Suche&Ersetzen.


Evtl passt der RegEx: ##[^#]+##
 
  • Gefällt mir
Reaktionen: Thorsten76
Also die RegExe von Hancock und mir schenken sich wenig, ich weiß nur bei Hancocks Variante nie, ob er wirklich den kleinst möglichen Treffer macht oder auch größere...

also Beispiel
Code:
##
hallo
##
test
##
123
###
Bei meinem wird sicher "test" übrig bleiben, bei Hancocks weiß ich nicht, ob nicht der gesamte Text als Treffer erkannt wird.
 
  • Gefällt mir
Reaktionen: Thorsten76
Super danke euch ihr seid klasse.
Das RegEx: ##[^#]+## müsste funktionieren. Wollte es schon über Notepad++ machen.
Danke an alle. Habe das vom tollertyp ausprobiert scheint zu funktionieren, auch wenn Leerzeichen und Tabs vorhanden sind
 
  • Gefällt mir
Reaktionen: tollertyp
Das einzige, was bei meinem doof sein kann, ist wenn in dem Bereich zwischen ## und ## eben ein einzelnes # vorkommt.
 
tollertyp schrieb:
Also die RegExe von Hancock und mir schenken sich wenig,
Das kommt auf den Text an. Da sollte man vorsichtig mit sein...

Die Hancock-Version liefert den kleinsten Treffer. Deine Version den größten. Wenn es nur einen Treffer (sprich: ## nur 2x im Text vorkommt) gibt, passen beide. Sollten mehrere Treffer im Text vorkommen, wird u.U. zu viel bzw. das falsche gelöscht.
 
Ich setze die ## Zeichen selber sonst wüste ich gar nicht wie ich gezielt löschen könnte. Da die Zeilen unterschiedlich sind. Ich suche nach bestimmten Operation ID und setze dort die zwei ## und möchte dazwischen alles gelöscht und ersetzen. Denke, das wird so funktionieren. Werde aber berichten. Vielen DANK.
 
tollertyp schrieb:
Bei meinem wird sicher "test" übrig bleiben, bei Hancocks weiß ich nicht, ob nicht der gesamte Text als Treffer erkannt wird.
Daher das ? nach dem +, dadurch wird es "non-greedy".

@Thorsten76 Dann kannst du aber auch mit erster Punkt markieren, letzter Punkt suchen, Shift halten, an zweite Position klicken, Shift loslassen, Entfernen das ganze erreichen. Das ist mglw. schneller.
 
  • Gefällt mir
Reaktionen: tollertyp
Also ein einzelnes # könnte vorkommen.

Habe aber es ausprobiert und mehrere # eingegeben und findet nur meine ##.
Ergänzung ()

@Hancock, aber doch nicht bei über 200 Dateien? Oder? Muss über all was ändern. Es sind CNC Dateien und möchte die Programme alle schnellstmöglich ändern:
 
Meiner Meinung nach, wenn es darum geht, dass es erledigt ist: Mach es so wie du jetzt geplant hast mit dem manuellen Markieren der Stelle.
Es geht auch ohne, du wirst mMn aber vorraussichtlich länger brauchen für die "bessere" Lösung und außerdem wird sie fehleranfälliger sein als das was du jetzt gerade machst.
 
Rein manuell würde ich es wohl auch nicht machen, da passieren auch viele Fehler.

Eventuell würde ich es automatisch und manuell machen, klingt doof, aber dann kann man sich noch schauen, welche Dateien im Ergebnis anders sind und rausfinden warum...

Dem Zufall würde ich da möglichst nichts überlassen.
 
Ich werde es ausprobieren. Hauptsache ich komme schneller an mein ziel als jedes Prog. an der Maschine zu ändern.
Danke euch allen für die super schnelle Hilfe. Daumen hoch.
 
Richtig @Hancock. Die ## werde ich durchsuchen und ersetzen, in alle Dateien einfügen, wo ich sie haben will. Danach möchte ich dazwischen alles gelöscht haben und mit einem neuen Code einfügen, sodass alle 200+ Progs gleich sind. (zurzeit sind sie es nicht)
 
Zurück
Oben