
Ich habe ein Dokument, in dem überall (TL by user) steht. Ich würde das gerne durch nichts ersetzen (und es dadurch überall löschen), aber der Benutzer könnte ein anderer sein oder es könnten mehrere Benutzer vorhanden sein (TL by user1) (TL by user3, superuser1). Bisher habe ich versucht, (TL by .*) zu finden und durch nichts zu ersetzen, aber das entfernt aus irgendeinem Grund alles außer dem Benutzer und den umgebenden Klammern, sodass ich nur noch (user1) oder (user3,superuser1) habe. Wie kann ich den regulären Ausdruck so einstellen, dass er übereinstimmt und die gesamte Übereinstimmung (TL by user) einschließlich der Klammern und allem darin ersetzt?
Dies ist in Word 2010, ich werde mehr Informationen hinzufügen, wenn ich später heute nach Hause komme
Antwort1
In Office gibt es keine eigentliche „RegEx“-Suche, aber Sie können die Option „Platzhalter verwenden“ nutzen.
Da es sich also nicht um einen echten regulären Ausdruck handelt, .
hilft das nichts. Sie benötigen lediglich das *
Platzhalterzeichen.
Der nächste Trick besteht darin, dass bei der Platzhaltersuche in Word die Klammern ()
zur Gruppierung verwendet werden (wie in RegEx). Wenn Sie also nach wörtlichen Klammern suchen möchten, müssen Sie diese mit einem Backslash ( \
) maskieren.
Wenn ich das alles zusammenfüge, erhalte ich den folgenden Suchbefehl, der (basierend auf meinen Tests) wie gewünscht funktioniert:
\(TL by *\)
Von mir verwendete Einstellungen für den Dialog „Suchen und Ersetzen“:
Antwort2
In Ihrer Frage fehlen Informationen zur Version und Plattform, aber ich habeDieser Artikelauf der MS-Website. Kurz gesagt,
Geben Sie eine Liste mit Namen wie unten ein
Chuck Norris Bruce Lee James Bond Bond
Klicken Sie auf der Registerkarte Start imBearbeitungKlicken Sie aufErsetzenzum Öffnen derSuchen und ErsetzenDialogbox.
- Wenn Sie dasPlatzhalter verwendenaufMehrund aktivieren Sie dann das Kontrollkästchen. Wenn Sie das Kontrollkästchen nicht aktivieren, behandelt Word die Platzhalterzeichen als Text.
Geben Sie die folgenden Zeichen in dasFinde wasFeld. Stellen Sie sicher, dass Sie das Leerzeichen zwischen den beiden Klammern einschließen:
(<*>) (<*>)
ImErsetzen mitGeben Sie in das Feld die folgenden Zeichen ein. Achten Sie darauf, das Leerzeichen zwischen dem Komma und dem zweiten Schrägstrich einzuschließen:
\2, \1
Markieren Sie die Tabelle und klicken Sie dann auf Alle ersetzen. Word transponiert die Namen und trennt sie mit einem Komma, etwa so
Norris, Chuck Lee, Bruce Bond, James Bond
VORBEHALT, das hat bei mir mit Office 2011 unter OSX 10.10.2 nicht funktioniert. Auf der Seite gibt es jedoch weitere Informationen zu erweiterten Funktionen.
Antwort3
Microsoft beansprucht eine eigene Platzhaltersprache namens „regulärer Ausdruck“, die nur im erweiterten Suchen- oder Ersetzen-Dialog verfügbar ist. Und diese Sprache unterscheidet sich geringfügig von anderen regulären Ausdrücken.