Wenn mehrere Instanzen aufeinanderfolgen, können Sie Folgendes tun:
Update gemäß neuer Anfrage:
- Ctrl+H
- Finde was:
^([^-]+- )(.+)(?:\R(?1)\2)+
- Ersetzen mit:
$2
- 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 group 1 [^-]+- : 1 or more NOT dash,then a dash and a space ) : end group 1 ( : start group 2 .+ : 1 or more any character ) : end group 2 (?: : start non capture group \R : any kind of linebreak (?1) : same pattern than group 1 (ie. "[^-]+- ") \2 : backreference to group 2 )+ : end non capture group, must appears 1 or more times.
Ersatz:
$2 : content of group 2
Ergebnis für gegebenes Beispiel:
rdac checker reports path is down: ctlr is in startup sequence
Wenn die Mehrfachinstanzen nicht aufeinander folgen, sollten Sie ein Skript in Ihrer bevorzugten Skriptsprache schreiben.
Hier ist ein Perl-Einzeiler, der die Arbeit erledigt:
perl -aE 'chomp;(undef,$x)=split(/-/,$_);next if exists $s{$x};$s{$x}=1;say$x' inputfile