Mithilfe des Dialogfelds „Suchen und Ersetzen“ in Microsoft Word 2003 möchte ich eine Liste von Adressen nach Postleitzahlen (kanadisch) durchsuchen, die kein Leerzeichen enthalten, z. B.
M2N3X6
L4C2A9
K5G1S7
und fügen Sie in der Mitte ein Leerzeichen ein:
M2N 3X6
L4C 2A9
K5G 1S7
Das sollte eigentlich einfach sein, aber ich habe ein bisschen Probleme mit dem Teil „Ersetzen durch“: Ich habe herausgefunden, dass ich im Suchfeld eingebe [A-Z][0-9][A-Z][0-9][A-Z][0-9]
, aber im Ersetzen-Feld, wie füge ich das Leerzeichen in der Mitte hinzu, ohne die Zeichen zu verlieren, die dort stehen? Ich dachte, es wäre so etwas wie \1\2\3 \4\5\6
, aber das funktioniert nicht
Jede Hilfe ist willkommen.
Antwort1
Die \1 usw. ersetzen Ausdrücke, und um anzugeben, dass etwas ein Ausdruck ist, schließen Sie es in () ein. Sie brauchen also
([A-Z])([0-9])([A-Z])([0-9])([A-Z])([0-9])
Dann
\1\2\3 \4\5\6
sollte funktionieren. Ich glaube, es gibt eine Grenze für die Anzahl der Ausdrücke, die Sie haben können (9, vielleicht)
Antwort2
Ich kann (im Dialogfeld „Suchen und Ersetzen“ von Microsoft Word) keine Möglichkeit finden, einen vollständigen Teil des regulären Ausdrucks zu ersetzen, wie es in Programmen wie möglich ist sed
. Aber ich habe eine mehrstufige Lösung für Ihr Problem gefunden. Identifizieren Sie zunächst eine Zeichenfolge, die nicht in Ihren Daten vorkommt und keine Zeichen enthält, die in „Suchen und Ersetzen“ von Word als Sonderzeichen gelten (z. B. „ ' @
“ oder „ ' #
“). (Alternativ können Sie sie verwenden, aber mit Escapezeichen versehen.) Es kann ein einzelnes Zeichen sein, z. B. „ ' |
“, solange es nicht in Ihren Daten vorkommt. Ich gehe davon aus, dass Sie „ |
“ ausgewählt haben. Nun,
- Führen Sie eine Suche nach
[A-Z][0-9][A-Z][0-9][A-Z][0-9]
und einen Ersatz durch durch durch^&|
. Dadurch wird jede nicht konforme Postleitzahl mit einem abschließenden „|
“ gekennzeichnet. - Suchen
[0-9][A-Z][0-9]|
und ersetzen durch^&
(mit vorangestelltem Leerzeichen). Dadurch wird das Leerzeichen an der gewünschten Stelle eingefügt. - Suchen Sie dann nach allen Vorkommen von
|
und ersetzen Sie es durch nichts.
Sie können dies tun, ohne den Platzhaltermodus zu verwenden:
^$^#^$^#^$^#
→^&|
.^#^$^#|
→^&
(oder sogar^?^?^?|
→^&
).|
→ nichts.
Beachten Sie, dass dies ^$
dem entspricht [A-Za-z]
. Wenn in Ihrer Situation also zwischen Groß- und Kleinschreibung unterschieden wird, müssen Sie vermutlich die „Platzhalter“ verwenden.
Antwort3
Ganz einfach: Verwenden Sie die Funktion „Text in Spalten“ in Excel und kombinieren Sie die Zeilen dann mit der Formel CONCATENATE mit einem Leerzeichen in der Mitte. Die Formel lautet dann =CONCATENATE(A1," ",B1)