So löschen Sie alles nach dem nächsten Doppelpunkt

349
Rick
Test123:Password:7 AUG 2018 Test123:Password:7 AUG 2018 Test123:Password:7 AUG 2018 

Ich möchte alles nach dem zweiten Doppelpunkt für alle Zeilen entfernen,

Ich habe es versucht ^([^:]*.[^:]*):.*$und es hat nicht funktioniert,

0

2 Antworten auf die Frage

0
Igb

Ihr regulärer Ausdruck scheint gut zu sein. Ich vermute, das Problem ist, dass Sie Notepad ++ nicht mitgeteilt haben (ich nehme an, dass Sie diesen Editor verwenden, da er in den Tags vorhanden ist), dass Sie die von Ihnen definierte Gruppe beibehalten möchten und nicht die gesamte Übereinstimmung (welche in Ihrem Beispiel ist die ganze Zeile).

Im Dialog sollten Sie sehen:

Suche:

^([^:]*.[^:]*):.*$ 

Ersetzen mit:

\1 

Der zweite Teil bedeutet, dass Sie die erste Gruppe von Zeichen behalten oder den Rest löschen möchten. In diesem Fall bedeutet der von Ihnen definierte reguläre Ausdruck: Ersetzen Sie alle Zeilen, die mehr als zwei ":" enthalten, durch das, was vor dem zweiten Vorkommen ":" steht

0
Toto
  • Ctrl+H
  • Suchen Sie nach : ^(?:[^:]+:)\K.+$ODER, ^[^:]+:[^:]+\K:.+$wenn Sie den zweiten Doppelpunkt entfernen möchten
  • Ersetzen mit: LEAVE EMPTY
  • Aktivieren Sie die Option Wrap around
  • Überprüfen Sie den regulären Ausdruck
  • NICHT PRÜFEN . matches newline
  • Replace all

Erläuterung:

^ # beginning of line (?: # start non capture group [^:]+ # 1 or more any character that is not a colon : # 1 colon ) # end group, must appear twice \K # forget all we have seen until this position .+ # 1 or more any character $ # end of line 

Ergebnis für gegebenes Beispiel:

Test123:Password: Test123:Password: Test123:Password: 

ODER (abhängig vom verwendeten regulären Ausdruck)

Test123:Password Test123:Password Test123:Password