REGEXERSETZEN Reguläre Ausdrücke mit vielen Beispielen
Hier auf dieser Seite werde ich Euch viele Beispiele für reguläre Ausdrücke geben die Ihr ganz leicht mit Excel 365 nachbilden könnt.
Reguläre Ausdrücke sind ein mächtiges Werkzeug um sehr detaillierte Vergleichsmuster zu erstellen.
Dabei werde ich mit einfachen Mustern anfangen die zum Ende hin immer komplexer werden.
Auf weiteren Seiten von mir findet Ihr übrigens REGEXEXTRAHIEREN oder REGTESTEN falls Ihr Euch dafür interessiert.
Um damit selbst ein wenig herumexperimentieren zu können, könnt Ihr Euch gerne die Tabellen Vorlage hier direkt ganz einfach herunterladen. Die Vorlage enthält die bereits die Formel REGEXERSETZEN.
Somit könnt Ihr auch einfach Eure eigenen Muster ausprobieren. Oben in
Zelle A1 stellt Ihr Euch das Muster zusammen, in
Zelle A2 kommt rein was Ihr einsetzen möchtet (Ersetzungsteil), in
Zelle A3 der Parameter "Vorkommen" () und unten im
Bereich A5 bis A9 könnt Ihr Daten eintragen um das Muster zu testen.
Auf der rechten Seite erfolgen dann über die Formel REGEXERSETZEN die Ausgaben die durch das Muster und den Ersetzungsteil festgelegt wurden
HIER DER DOWNLOAD der Vorlage:
Download Vorlage-REGEXERSETZEN-DOWNLOAD.xlsx
Download Vorlage-REGEXERSETZEN-DOWNLOAD.xlsx als ZIP Datei
Ein Video was zeigt wie ich die Tabelle aufgebaut habe und einfache Grundlagen im Umgang mit regulären Ausdrücken findet Ihr ganz unten.
[ Zum Video ]
Ihr könnt gerne in die Kommentare Eure eigenen Muster eintragen, Wünsche zu neuen Mustern äußern und Euch bei Fragen natürlich auch gerne gegenseitig helfen. Ich denke das ganze Thema ist zwar etwas kompliziert aber macht auch richtig Spaß.
Tipp: Deckt die Spalte mit den Antworten auf der rechten Seite ab und überlegt, welche Antwort Ihr erwarten würdest. So könnt Ihr Euer Wissen testen! 🙂
Funktionsaufbau von REGEXERSETZEN
Die Funktion REGEXERSETZEN ersetzt Teile eines Textes, die mit einem angegebenen regulären Ausdruck (Muster) übereinstimmen, durch einen neuen Text.
REGEXERSETZEN(Text; Muster; Ersetzen; [Vorkommen]; [Groß-/Kleinschreibung])
Parameter:
- Text
Der Text, in dem ein Muster gesucht und ersetzt werden soll. Dies kann ein direkter Textstring (in Anführungszeichen) oder ein Verweis auf eine Zelle sein, die einen Text enthält. - Muster
Der reguläre Ausdruck, der im Text gesucht wird, um ihn durch den Ersetzen-Text zu ersetzen. Es wird der standardisierte RegEx-Syntax erwartet PCRE2. - Ersetzen
Der Text, der das gefundene Muster ersetzen soll. Es kann ein direkter Textstring oder ein Zellenverweis sein. Sonderzeichen können mit regulären Ausdrücken verwendet werden, z. B."$1"
, um eine Gruppierung aus dem Muster zu referenzieren. - Vorkommen (optional)
Bestimmt, welches Vorkommen des Musters ersetzt werden soll. Standardmäßig werden alle Vorkommen ersetzt.
0
oder leer: Ersetzt alle Vorkommen (Standard).
1
: Ersetzt nur das erste Vorkommen.
2
: Ersetzt nur das zweite Vorkommen, usw.
-1
: Ersetzt das erste Vorkommen von hinten.
-2
: Ersetzt das zweite Vorkommen von hinten. - Groß-/Kleinschreibung (optional)
Legt fest, ob die Groß-/Kleinschreibung bei der Musterübereinstimmung beachtet wird. Standardmäßig wird die Groß-/Kleinschreibung beachtet (0
oderFALSCH
).
0
oderFALSCH
(Standard): Beachtet die Groß-/Kleinschreibung.
oder
1WAHR
: Ignoriert die Groß-/Kleinschreibung.
Metazeichen
Hier ist eine Auflistung von vielen Metazeichen die Euch auf dieser Seite begegnen könnten. Um das etwas besser zu verstehen gibt es natürlich auch eine kurze Beschreibung dazu 🙂
Metazeichen | Bedeutung | Beispiel |
---|---|---|
. |
Beliebiges Zeichen (außer Zeilenumbrüche) | a.c findet "abc", "axc", aber nicht "ac" |
\d |
Beliebige Ziffer (0–9) | \d+ findet "12345" |
\D |
Kein Ziffernzeichen | \D+ findet "abc" |
\w |
Alphanumerisches Zeichen oder Unterstrich | \w+ findet "abc_123" |
\W |
Kein alphanumerisches Zeichen | \W+ findet "!@#" |
\s |
Beliebiges Leerzeichen (auch Tab) | a\s+b findet "a b" |
\S |
Kein Leerzeichen | \S+ findet "abc123" |
^ |
Anfang der Zeichenkette | ^abc findet "abc" am Anfang |
$ |
Ende der Zeichenkette | abc$ findet "abc" am Ende |
* |
0 oder mehr Wiederholungen | ab*c findet "ac", "abc", "abbc" |
+ |
1 oder mehr Wiederholungen | ab+c findet "abc", "abbc", aber nicht "ac" |
? |
0 oder 1 Wiederholung | ab?c findet "ac", "abc" |
{n} |
Genau n Wiederholungen | a{3} findet "aaa" |
{n,} |
Mindestens n Wiederholungen | a{2,} findet "aa", "aaa", "aaaa" |
{n,m} |
Zwischen n und m Wiederholungen | a{2,4} findet "aa", "aaa", "aaaa" |
| |
Alternativen (oder) | a|b findet "a" oder "b" |
( ) |
Gruppierung | (ab)+ findet "abab" |
[ ] |
Zeichenklasse | [abc] findet "a", "b", "c" |
[^ ] |
Negierte Zeichenklasse | [^abc] findet alles außer "a", "b", "c" |
\b |
Wortgrenze | \bword\b findet "word", aber nicht "sword" |
(?= ) |
Lookahead (Prüfen ohne Matchen) | abc(?=def) findet "abc", wenn es von "def" gefolgt wird |
(?! ) |
Negativer Lookahead | abc(?!def) findet "abc", wenn es nicht von "def" gefolgt wird |
Maskierung von Metazeichen in der Excel-Funktion REGEXERSETZEN
Ihr könnt Zeichen mit einem Backslash \ maskieren um zum Beispiel nach diesen Zeichen zu suchen.
Zeichen | Bedeutung (unmaskiert) | Maskierung erforderlich? |
---|---|---|
\\ | Escape-Zeichen (zum Maskieren anderer Zeichen) | Ja, wenn ihr einen Backslash suchen möchtet |
. | Beliebiges Zeichen (außer Zeilenumbruch) | Ja, wenn ihr einen Punkt suchen möchtet |
^ | Anfang eines Strings oder einer Zeile | Ja, wenn ihr ein `^` suchen möchtet |
$ | Ende eines Strings oder einer Zeile | Ja, wenn ihr ein `$` suchen möchtet |
* | Wiederholung (0 oder mehr) | Ja, wenn ihr ein `*` suchen möchtet |
+ | Wiederholung (1 oder mehr) | Ja, wenn ihr ein `+` suchen möchtet |
? | Optional (0 oder 1) | Ja, wenn ihr ein `?` suchen möchtet |
{ } | Quantifizierer (z. B. `{1,3}`) | Ja, wenn ihr `{` oder `}` suchen möchtet |
( ) | Gruppierung oder Capturing Groups | Ja, wenn ihr `(` oder `)` suchen möchtet |
[ ] | Zeichenklassen | Ja, wenn ihr `[` oder `]` suchen möchtet |
| | ODER-Bedingung | Ja, wenn ihr ein `|` suchen möchtet |
/ | Schrägstrich (kein spezielles Zeichen in Excel-RegEx) | Nein |
– | Spanne in Zeichenklassen (z. B. `[a-z]`) | Ja, innerhalb von Zeichenklassen (wenn zwischen Zeichen) |
` | Backtick (keine spezielle Bedeutung) | Nein |
Einfache Beispiele für die Excel Funktion REGEXERSETZEN
Muster: \d
Ersetzung: X
Vorkommen: 0
Das Muster \d sucht eine einzelne Ziffer (0–9). Die Ersetzung X ersetzt jede gefundene Ziffer mit einem "X". Der Parameter Vorkommen = 0 bedeutet, dass alle gefundenen Vorkommen ersetzt werden.
A | B | |
---|---|---|
1 | \d | |
2 | X | |
3 | 0 | |
4 | ||
5 | 123abc | XXXabc |
6 | a2c3d4 | aXcXdX |
7 | hello7 | helloX |
8 | abc123 | abcXXX |
9 | 9abc8 | XabcX |
Muster: \d
Ersetzung: X
Vorkommen: 1
Das Muster \d sucht eine einzelne Ziffer (0–9). Die Ersetzung X ersetzt nur die erste gefundene Ziffer mit einem "X". Der Parameter Vorkommen = 1 bedeutet, dass nur das erste gefundene Vorkommen ersetzt wird.
A | B | |
---|---|---|
1 | \d | |
2 | X | |
3 | 1 | |
4 | ||
5 | 123abc | X23abc |
6 | a2c3d4 | aXc3d4 |
7 | hello7 | helloX |
8 | abc123 | abcX23 |
9 | 9abc8 | Xabc8 |
Muster: ^[A-Za-z]
Ersetzung: Z
Vorkommen: 0
^[A-Za-z]: Dieses Muster sucht einen einzelnen Buchstaben (A–Z, a–z) am Anfang des Strings.
Der ^-Operator zeigt an, dass es sich um den Anfang des Strings handelt.
A | B | |
---|---|---|
1 | ^[A-Za-z] | |
2 | Z | |
3 | 0 | |
4 | ||
5 | abc123 | Zbc123 |
6 | Hello7 | Zello7 |
7 | xyz | Zyz |
8 | 1abc | 1abc |
9 | AbcDef | ZbcDef |
Muster: ^[A-Za-z]
Ersetzung: Z
Vorkommen: 1
Hinweis: In diesem Fall wirkt sich der "Vorkommen"-Parameter nicht sichtbar aus, da das Muster nur auf das erste Zeichen des Strings zielt.
A | B | |
---|---|---|
1 | ^[A-Za-z] | |
2 | Z | |
3 | 1 | |
4 | ||
5 | abc123 | Zbc123 |
6 | Hello7 | Zello7 |
7 | xyz | Zyz |
8 | 1abc | 1abc |
9 | AbcDef | ZbcDef |
Muster: [A-Za-z]
Ersetzung: Y
Vorkommen: 0
Das Muster [A-Za-z] sucht jeden Buchstaben des Alphabets, unabhängig davon, ob es sich um einen Groß- oder Kleinbuchstaben handelt. Die Ersetzung Y ersetzt jeden gefundenen Buchstaben mit einem "Y". Der Parameter Vorkommen = 0 sorgt dafür, dass alle gefundenen Buchstaben ersetzt werden.
A | B | |
---|---|---|
1 | [A-Za-z] | |
2 | Y | |
3 | 0 | |
4 | ||
5 | Hallo123 | YYYYY123 |
6 | 42Test | 42YYYY |
7 | ABCdef | YYYYYY |
8 | !@#hello | !@#YYYYY |
9 | MixedCase | YYYYYYYYY |
Muster: [A-Za-z]
Ersetzung: Y
Vorkommen: 1
Das Muster [A-Za-z] sucht jeden Buchstaben des Alphabets. Mit dem Parameter Vorkommen = 1 wird nur der erste gefundene Buchstabe ersetzt.
A | B | |
---|---|---|
1 | [A-Za-z] | |
2 | Y | |
3 | 1 | |
4 | ||
5 | Hallo123 | Yallo123 |
6 | 42Test | 42Yest |
7 | ABCdef | YBCdef |
8 | !@#hello | !@#Yello |
9 | MixedCase | YixedCase |
Muster: \.$
Ersetzung: !
Vorkommen: 0
Das Muster \.$ sucht einen Punkt (.), der sich am Ende eines Strings befindet. Das $ zeigt an, dass das Muster den Abschluss des Strings treffen soll. Die Ersetzung ! ersetzt den gefundenen Punkt mit einem Ausrufezeichen. Da das Muster nur ein Vorkommen am Ende eines Strings treffen kann, hat der Parameter Vorkommen hier keine sichtbare Auswirkung.
A | B | |
---|---|---|
1 | \.$ | |
2 | ! | |
3 | 0 | |
4 | ||
5 | Das ist ein Test. | Das ist ein Test! |
6 | Kein Punkt | Kein Punkt |
7 | Ende. | Ende! |
8 | . | ! |
9 | 12345 . | 12345 ! |
Muster: \.$
Ersetzung: !
Vorkommen: 1
Der Parameter Vorkommen = 1 verhält sich hier identisch zu Vorkommen = 0, da das Muster nur einmal vorkommen kann.
A | B | |
---|---|---|
1 | \.$ | |
2 | ! | |
3 | 1 | |
4 | ||
5 | Das ist ein Test. | Das ist ein Test! |
6 | Kein Punkt | Kein Punkt |
7 | Ende. | Ende! |
8 | . | ! |
9 | 12345 . | 12345 ! |
Muster: \d+
Ersetzung: \$
Vorkommen: 0
Das Muster \d+ sucht eine oder mehrere zusammenhängende Ziffern. Das + bedeutet, dass das Muster mindestens eine Ziffer, aber auch eine beliebige Folge von Ziffern trifft. Die Ersetzung \$ ersetzt jede gefundene Zahlenfolge mit einem Dollarzeichen. Der Parameter Vorkommen = 0 sorgt dafür, dass alle gefundenen Zahlenfolgen ersetzt werden.
A | B | |
---|---|---|
1 | \d+ | |
2 | \$ | |
3 | 0 | |
4 | ||
5 | 123abc456 | $abc$ |
6 | Preis: 50 | Preis: $ |
7 | 42 ist die Zahl | $ ist die Zahl |
8 | Test1234Test | Test$Test |
9 | 567890 | $ |
Muster: \d+
Ersetzung: \$
Vorkommen: 1
Das Muster \d+ sucht zusammenhängende Zahlenfolgen. Mit dem Parameter Vorkommen = 1 wird nur die erste gefundene Zahlenfolge ersetzt.
A | B | |
---|---|---|
1 | \d+ | |
2 | \$ | |
3 | 1 | |
4 | ||
5 | 123abc456 | $abc456 |
6 | Preis: 50 | Preis: $ |
7 | 42 ist die Zahl | $ ist die Zahl |
8 | Test1234Test | Test$Test |
9 | 567890 | $ |
Muster: \s{2,}
Ersetzung: " " (Hinweis: Nur ein einzelnes Leerzeichen)
Vorkommen: 0
Das Muster \s{2,} sucht nach zwei oder mehr aufeinanderfolgenden Leerzeichen:
\s steht für ein Leerzeichen.
{2,} bedeutet mindestens zwei Leerzeichen hintereinander.
Die Ersetzung ersetzt die gefundenen Leerzeichen durch genau ein einzelnes Leerzeichen. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Vorkommen ersetzt werden.
A | B | |
---|---|---|
1 | \s{2,} | |
2 | ||
3 | 0 | |
4 | ||
5 | Dies ist ein Test | Dies ist ein Test |
6 | Leerzeichen hier | Leerzeichen hier |
7 | KeinProblem | KeinProblem |
8 | Viele Leerzeichen | Viele Leerzeichen |
9 | Start und Ende | Start und Ende |
Muster: \s{2,}
Ersetzung: " " (Hinweis: Nur ein einzelnes Leerzeichen)
Vorkommen: 1
Mit Vorkommen = 1 wird nur das erste Vorkommen von zwei oder mehr Leerzeichen durch ein einzelnes Leerzeichen ersetzt.
A | B | |
---|---|---|
1 | \s{2,} | |
2 | ||
3 | 1 | |
4 | ||
5 | Dies ist ein Test | Dies ist ein Test |
6 | Leerzeichen hier | Leerzeichen hier |
7 | KeinProblem | KeinProblem |
8 | Viele Leerzeichen | Viele Leerzeichen |
9 | Start und Ende | Start und Ende |
Muster: \\
Ersetzung:
Vorkommen: 0
Das Muster \\ sucht nach einem Backslash (\). Da der Backslash als Escape-Zeichen verwendet wird, muss er im Muster selbst maskiert werden. Die Ersetzung "" entfernt alle Backslashes. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Backslashes im String entfernt werden.
A | B | |
---|---|---|
1 | \\ | |
2 | ||
3 | 0 | |
4 | ||
5 | Pfad\zu\Datei | PfadzuDatei |
6 | C:\Windows\Test | C:WindowsTest |
7 | \n\l\t | nlt |
8 | \ | |
9 | OhneBackslash | OhneBackslash |
Muster: \\
Ersetzung:
Vorkommen: 0
Mit Vorkommen = 1 wird nur der erste gefundene Backslash entfernt.
A | B | |
---|---|---|
1 | \\ | |
2 | ||
3 | 1 | |
4 | ||
5 | Pfad\zu\Datei | Pfadzu\Datei |
6 | C:\Windows\Test | C:Windows\Test |
7 | \n\l\t | n\l\t |
8 | \ | |
9 | OhneBackslash | OhneBackslash |
Muster: [^\d]
Ersetzung:
Vorkommen: 0
Das Muster [^\d] sucht alles, was keine Ziffer ist. Das ^ innerhalb der eckigen Klammern bedeutet Negation. Die Ersetzung "" entfernt alle nicht-numerischen Zeichen. Der Parameter Vorkommen = 0 sorgt dafür, dass alle relevanten Vorkommen entfernt werden.
A | B | |
---|---|---|
1 | [^\d] | |
2 | ||
3 | 0 | |
4 | ||
5 | 123abc456 | 123456 |
6 | Preis: 50 Euro | 50 |
7 | 42! Ist das die Zahl? | 42 |
8 | Test1234Test | 1234 |
9 | KeinZahlenwert |
Muster: [^\d]
Ersetzung:
Vorkommen: 1
A | B | |
---|---|---|
1 | [^\d] | |
2 | ||
3 | 1 | |
4 | ||
5 | 123abc456 | 123bc456 |
6 | Preis: 50 Euro | reis: 50 Euro |
7 | 42! Ist das die Zahl? | 42 Ist das die Zahl? |
8 | Test1234Test | est1234Test |
9 | KeinZahlenwert | einZahlenwert |
Muster: \b
Ersetzung: \|
Vorkommen: 0
Das Muster \b steht für eine Wortgrenze (zwischen einem Wort und einem Nicht-Wort-Zeichen). Die Ersetzung | markiert diese Wortgrenzen mit senkrechten Strichen. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Wortgrenzen ersetzt werden.
A | B | |
---|---|---|
1 | \b | |
2 | \| | |
3 | 0 | |
4 | ||
5 | Wortgrenzen hier | |Wortgrenzen| |hier| |
6 | Ein Test! | |Ein| |Test|! |
7 | Hallo Welt | |Hallo| |Welt| |
8 | Ein-Satz | |Ein|-|Satz| |
9 | Ohne Grenzen | |Ohne| |Grenzen| |
Muster: \b
Ersetzung: \|
Vorkommen: 1
Mit Vorkommen = 1 wird nur die erste gefundene Wortgrenze markiert.
A | B | |
---|---|---|
1 | \b | |
2 | \| | |
3 | 1 | |
4 | ||
5 | Wortgrenzen hier | |Wortgrenzen hier |
6 | Ein Test! | |Ein Test! |
7 | Hallo Welt | |Hallo Welt |
8 | Ein-Satz | |Ein-Satz |
9 | Ohne Grenzen | |Ohne Grenzen |
Muster: [^a-zA-ZäöüÄÖÜß]
Ersetzung:
Vorkommen: 0
Das Muster [a-zA-ZäöüÄÖÜß] berücksichtigt alle Buchstaben des deutschen Alphabets, einschließlich der Umlaute und des ß. Das [^…] negiert die Auswahl, sodass alle nicht-Buchstaben entfernt werden. Die Ersetzung "" löscht alle nicht-Buchstaben. Der Parameter Vorkommen = 0 sorgt dafür, dass alle relevanten Zeichen entfernt werden.
A | B | |
---|---|---|
1 | [^a-zA-ZäöüÄÖÜß] | |
2 | ||
3 | 0 | |
4 | ||
5 | Hallo123! Wie geht's? | HalloWiegehts |
6 | Grüß Gott! | GrüßGott |
7 | Das ist 1 Test. | DasistTest |
8 | Schön, oder? | Schönoder |
9 | %&§ Sonderzeichen | Sonderzeichen |
Muster: [^a-zA-ZäöüÄÖÜß]
Ersetzung:
Vorkommen: 1
Mit Vorkommen = 1 wird nur das erste nicht-Buchstaben-Zeichen entfernt.
A | B | |
---|---|---|
1 | [^a-zA-ZäöüÄÖÜß] | |
2 | ||
3 | 1 | |
4 | ||
5 | Hallo123! Wie geht's? | Hallo23! Wie geht's? |
6 | Grüß Gott! | GrüßGott! |
7 | Das ist 1 Test. | Dasist 1 Test. |
8 | Schön, oder? | Schön oder? |
9 | %&§ Sonderzeichen | &§ Sonderzeichen |
Muster: [^a-zA-ZäöüÄÖÜß0-9]
Ersetzung:
Vorkommen: 0
Das Muster [^a-zA-ZäöüÄÖÜß0-9] sucht alle Zeichen, die keine Buchstaben oder Ziffern sind:
[^a-zA-ZäöüÄÖÜß0-9] steht für Buchstaben (Groß- und Kleinschreibung) und Zahlen.
^ innerhalb der Klammern negiert das Muster.
Die Ersetzung durch Nichts entfernt alle nicht-alphanumerischen Zeichen. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Vorkommen entfernt werden.
A | B | |
---|---|---|
1 | [^a-zA-ZäöüÄÖÜß0-9] | |
2 | ||
3 | 0 | |
4 | ||
5 | Hallo! Wie geht's? | HalloWiegehts |
6 | Test123-Test äöü | Test123Testäöü |
7 | $%^&Sonderzeichen123 | Sonderzeichen123 |
8 | Leerzeichen auch weg | Leerzeichenauchweg |
9 | #@! |
Muster: [^a-zA-ZäöüÄÖÜß0-9]
Ersetzung:
Vorkommen: 1
Mit Vorkommen = 1 wird nur das erste nicht-alphanumerische Zeichen entfernt.
A | B | |
---|---|---|
1 | [^a-zA-ZäöüÄÖÜß0-9] | |
2 | ||
3 | 1 | |
4 | ||
5 | Hallo! Wie geht's? | Hallo Wie geht's? |
6 | Test123-Test äöü | Test123Test äöü |
7 | $%^&Sonderzeichen123 | %^&Sonderzeichen123 |
8 | Leerzeichen auch weg | Leerzeichenauch weg |
9 | #@! | @! |
Muster: \d+([.,]\d+)?
Ersetzung: {Zahl}
Vorkommen: 0
Das Muster \d+([.,]\d+)? berücksichtigt Zahlen im deutschen Format:
\d+ sucht eine oder mehrere Ziffern (den Hauptteil der Zahl).
([.,]\d+)? berücksichtigt optional einen Dezimalpunkt oder ein Komma mit weiteren Ziffern.
Die Ersetzung {Zahl} ersetzt jede gefundene Zahl mit {Zahl}. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Zahlen ersetzt werden.
A | B | |
---|---|---|
1 | \d+([.,]\d+)? | |
2 | \{Zahl\} | |
3 | 0 | |
4 | ||
5 | Preis: 12,34 Euro | Preis: {Zahl} Euro |
6 | 1.234,56 | {Zahl} |
7 | Ein Betrag von 12,20 und 15,99 | Ein Betrag von {Zahl} und {Zahl} |
8 | Kein Wert | Kein Wert |
9 | Betrag: 1000,50 | Betrag: {Zahl} |
Muster: \d+([.,]\d+)?
Ersetzung: {Zahl}
Vorkommen: 1
Mit Vorkommen = 1 wird nur die erste gefundene Zahl ersetzt.
A | B | |
---|---|---|
1 | \d+([.,]\d+)? | |
2 | \{Zahl\} | |
3 | 1 | |
4 | ||
5 | Preis: 12,34 Euro | Preis: {Zahl} Euro |
6 | 1.234,56 | {Zahl} |
7 | Ein Betrag von 12,20 und 15,99 | Ein Betrag von {Zahl} und 15,99 |
8 | Kein Wert | Kein Wert |
9 | Betrag: 1000,50 | Betrag: {Zahl} |
Mittelschwere Beispiele für die Excel Funktion REGEXERSETZEN
Muster: <[^>]+>
Ersetzung:
Vorkommen: 0
Das Muster <[^>]+> sucht nach HTML-Tags:
< beginnt das Muster. [^>]+ sucht eine beliebige Zeichenfolge, die kein > enthält.
> beendet das Muster.
A | B | |
---|---|---|
1 | <[^>]+> | |
2 | ||
3 | 0 | |
4 | ||
5 | <b>Fett</b> | Fett |
6 | <div>Inhalt</div> | Inhalt |
7 | Kein HTML | Kein HTML |
8 | <p class="Test">Absatz</p> | Absatz |
9 | <a href="#">Link</a> | Link |
Muster: <[^>]+>
Ersetzung:
Vorkommen: 1
Mit Vorkommen = 1 wird nur das erste gefundene HTML-Tag entfernt.
A | B | |
---|---|---|
1 | <[^>]+> | |
2 | ||
3 | 1 | |
4 | ||
5 | <b>Fett</b> | Fett</b> |
6 | <div>Inhalt</div> | Inhalt</div> |
7 | Kein HTML | Kein HTML |
8 | <p class="Test">Absatz</p> | Absatz</p> |
9 | <a href="#">Link</a> | Link</a> |
Muster: [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Ersetzung: \(E-Mail\)
Vorkommen: 0
Das Muster [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} sucht nach gültigen E-Mail-Adressen:
[a-zA-Z0-9._%+-]+ sucht den lokalen Teil der E-Mail (vor dem @).
@[a-zA-Z0-9.-]+ sucht den Domain-Namen nach dem @.
\.[a-zA-Z]{2,} sucht die Top-Level-Domain (mindestens 2 Buchstaben).
A | B | |
---|---|---|
1 | [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} | |
2 | \(E-Mail\) | |
3 | 0 | |
4 | ||
5 | Kontakt: test@example.com | Kontakt: (E-Mail) |
6 | user1@mail.de und user2@domain.org | (E-Mail) und (E-Mail) |
7 | Keine E-Mail hier | Keine E-Mail hier |
8 | Mail: support@web.co | Mail: (E-Mail) |
9 | Email test@invalid. | Email test@invalid. |
Muster: [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Ersetzung: \(E-Mail\)
Vorkommen: 1
Mit Vorkommen = 1 wird nur die erste gefundene E-Mail-Adresse ersetzt.
A | B | |
---|---|---|
1 | [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,} | |
2 | \(E-Mail\) | |
3 | 1 | |
4 | ||
5 | Kontakt: test@example.com | Kontakt: (E-Mail) |
6 | user1@mail.de und user2@domain.org | (E-Mail) und user2@domain.org |
7 | Keine E-Mail hier | Keine E-Mail hier |
8 | Mail: support@web.co | Mail: (E-Mail) |
9 | Email test@invalid. | Email test@invalid. |
Muster: \d{1,3}([.,]\d{3})*
Ersetzung: \{Zahl\}
Vorkommen: 0
Das Muster \d{1,3}([.,]\d{3})* sucht Zahlen mit Trennzeichen (z. B. Tausendertrennung):
\d{1,3} sucht eine Zahl mit 1 bis 3 Ziffern.
([.,]\d{3})* sucht optional wiederholte Gruppen, in denen ein Punkt oder Komma auf drei Ziffern folgt.
Hinweis: Es ist zu beachten dass reine Zahlen mit Trennzeichen als Text formatiert sein müssen damit reguläre Ausdrücke korrekt funktionieren (siehe unten).
A | B | |
---|---|---|
1 | \d{1,3}([.,]\d{3})* | |
2 | \{Zahl\} | |
3 | 0 | |
4 | ||
5 | Preis: 1.234,56 Euro | Preis: {Zahl},{Zahl} Euro |
6 | Tausender: 12.345.678 | Tausender: {Zahl} |
7 | Nur 123 hier | Nur {Zahl} hier |
8 | Keine Zahl | Keine Zahl |
9 | Wert: 1,234 | Wert: {Zahl} |
Muster: \d{1,3}([.,]\d{3})*
Ersetzung: \{Zahl\}
Vorkommen: 1
Mit Vorkommen = 1 wird nur die erste gefundene Zahl ersetzt.
A | B | |
---|---|---|
1 | \d{1,3}([.,]\d{3})* | |
2 | \{Zahl\} | |
3 | 1 | |
4 | ||
5 | Preis: 1.234,56 Euro | Preis: {Zahl},56 Euro |
6 | Tausender: 12.345.678 | Tausender: {Zahl} |
7 | Nur 123 hier | Nur {Zahl} hier |
8 | Keine Zahl | Keine Zahl |
9 | Wert: 1,234 | Wert: {Zahl} |
Muster: \+49\s?\d{3,4}[-\s]?\d{4,}
Ersetzung: \{Telefon\}
Vorkommen: 0
Das Muster \+49\s?\d{3,4}[-\s]?\d{4,} sucht nach deutschen Telefonnummern im internationalen Format:
\+49 sucht die Vorwahl für Deutschland.
\s? erlaubt ein optionales Leerzeichen.
\d{3,4} sucht 3–4 Ziffern (Ortsvorwahl).
[-\s]? erlaubt einen optionalen Bindestrich oder ein Leerzeichen.
\d{4,} sucht mindestens 4 Ziffern (Teilnehmernummer).
A | B | |
---|---|---|
1 | \+49\s?\d{3,4}[-\s]?\d{4,} | |
2 | \{Telefon\} | |
3 | 0 | |
4 | ||
5 | +49 123 4567890 | {Telefon} |
6 | Rufnummer: +49 123 4567 | Rufnummer: {Telefon} |
7 | Keine Nummer hier | Keine Nummer hier |
8 | +49 1234 567890 | {Telefon} |
9 | Tel: +4912345678 | Tel: {Telefon} |
Muster: ([A-Za-zäöüÄÖÜß]+),\s([A-Za-zäöüÄÖÜß]+)
Ersetzung: \2 \1
Vorkommen: 0
Das Muster ([A-Za-zäöüÄÖÜß]+),\s([A-Za-zäöüÄÖÜß]+) sucht nach Namen im Format "Nachname, Vorname":
([A-Za-zäöüÄÖÜß]+) sucht den Nachnamen und speichert ihn in Gruppe 1.
,\s erwartet ein Komma, gefolgt von einem Leerzeichen.
([A-Za-zäöüÄÖÜß]+) sucht den Vornamen und speichert ihn in Gruppe 2.
Die Ersetzung \2 \1 formatiert den Namen ins Format "Vorname Nachname". Der Parameter Vorkommen = 0 sorgt dafür, dass alle gefundenen Namen umformatiert werden.
A | B | |
---|---|---|
1 | ([A-Za-zäöüÄÖÜß]+),\s([A-Za-zäöüÄÖÜß]+) | |
2 | \2 \1 | |
3 | 0 | |
4 | ||
5 | Müller, Max | Max Müller |
6 | Schmidt, Anna | Anna Schmidt |
7 | Kein Name hier | Kein Name hier |
8 | Mustermann, Erika | Erika Mustermann |
9 | Meier, Hans und Müller, Lisa | Hans Meier und Lisa Müller |
Komplexere Beispiele für die Excel Funktion REGEXERSETZEN
Muster: (\d{1,2}).(\d{1,2}).(\d{4})
Ersetzung: \3-\2-\1
Vorkommen: 0
Das Muster (\d{1,2})\.(\d{1,2})\.(\d{4}) sucht nach Datumsangaben im deutschen Format (TT.MM.JJJJ):
(\d{1,2}) sucht 1–2 Ziffern für den Tag und speichert sie in einer Capturing Group (Gruppe 1).
\. sucht den Punkt als Trennzeichen.
(\d{1,2}) sucht 1–2 Ziffern für den Monat und speichert sie in Gruppe 2.
\.(\d{4}) sucht genau 4 Ziffern für das Jahr und speichert sie in Gruppe 3.
Die Ersetzung \3-\2-\1 wandelt das Datum ins ISO-Format (JJJJ-MM-TT) um. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Datumsangaben umgewandelt werden.
Hinweis: Bei reinen Datumsangaben ist es wichtig dass das Datum als Text formatiert ist damit die Muster korrekt angewendet werden können (siehe unten).
A | B | |
---|---|---|
1 | (\d{1,2})\.(\d{1,2})\.(\d{4}) | |
2 | \3-\2-\1 | |
3 | 0 | |
4 | ||
5 | Datum: 25.12.2023 | Datum: 2023-12-25 |
6 | Am 01.01.2024 einen Termin | Am 2024-01-01 einen Termin |
7 | Termin: 15.08.1999 | Termin: 1999-08-15 |
8 | Kein Datum hier | Kein Datum hier |
9 | 31.03.2000 und 1.4.2020 | 2000-03-31 und 2020-4-1 |
Muster: (\d{1,2}).(\d{1,2}).(\d{4})
Ersetzung: \3-\2-\1
Vorkommen: 1
Mit Vorkommen = 1 wird nur die erste gefundene Datumsangabe umgewandelt.
A | B | |
---|---|---|
1 | (\d{1,2})\.(\d{1,2})\.(\d{4}) | |
2 | \3-\2-\1 | |
3 | 1 | |
4 | ||
5 | Datum: 25.12.2023 | Datum: 2023-12-25 |
6 | Am 01.01.2024 einen Termin | Am 2024-01-01 einen Termin |
7 | Termin: 15.08.1999 | Termin: 1999-08-15 |
8 | Kein Datum hier | Kein Datum hier |
9 | 31.03.2000 und 1.4.2020 | 2000-03-31 und 1.4.2020 |
Muster: (https?://)([a-zA-Z0-9.-]+)(/[^\s]*)?
Ersetzung: \1[DOMAIN]\3
Vorkommen: 0
Das Muster (https?:\/\/)([a-zA-Z0-9.-]+)(\/[^\s]*)? sucht nach URLs:
(https?:\/\/) sucht nach dem Protokoll (http:// oder https://) und speichert es in Gruppe 1.
([a-zA-Z0-9.-]+) sucht den Domainnamen und speichert ihn in Gruppe 2.
(\/[^\s]*)? sucht optional nach einem Pfad hinter dem Domainnamen und speichert ihn in Gruppe 3.
Die Ersetzung \1[DOMAIN]\3 anonymisiert die Domain, behält aber das Protokoll und den Pfad. Der Parameter Vorkommen = 0 sorgt dafür, dass alle URLs anonymisiert werden.
A | B | |
---|---|---|
1 | (https?:\/\/)([a-zA-Z0-9.-]+)(\/[^\s]*)? | |
2 | \1[DOMAIN]\3 | |
3 | 0 | |
4 | ||
5 | https://example.com | https://[DOMAIN] |
6 | http://test.de/path/to/page | http://[DOMAIN]/path/to/page |
7 | Kein Link hier | Kein Link hier |
8 | https://sub.domain.org/test | https://[DOMAIN]/test |
9 | http://localhost:8080 | http://[DOMAIN]:8080 |
Muster: (\d{3})-(\d{1,5})-(\d{1,7})-(\d{1,7})-(\d{1})
Ersetzung: ISBN: \1-\2-\3-\4-\5
Vorkommen: 0
Das Muster (\d{3})-(\d{1,5})-(\d{1,7})-(\d{1,7})-(\d{1}) sucht nach ISBN-Nummern im Format XXX-X-XXXXX-XXXX-X:
(\d{3}) sucht die ersten 3 Ziffern der ISBN und speichert sie in Gruppe 1.
(\d{1,5}), (\d{1,7}), (\d{1,7}) und (\d{1}) suchen die nachfolgenden Teile der ISBN mit jeweils spezifischen Längen.
Die Ersetzung ISBN: \1-\2-\3-\4-\5 fügt den Präfix "ISBN: " hinzu und formatiert die Nummer korrekt. Der Parameter Vorkommen = 0 sorgt dafür, dass alle ISBN-Nummern erkannt und formatiert werden.
A | B | |
---|---|---|
1 | (\d{3})-(\d{1,5})-(\d{1,7})-(\d{1,7})-(\d{1}) | |
2 | ISBN: \1-\2-\3-\4-\5 | |
3 | 0 | |
4 | ||
5 | 978-3-16-148410-0 | ISBN: 978-3-16-148410-0 |
6 | ISBN: 978-0-393-04002-9 | ISBN: ISBN: 978-0-393-04002-9 |
7 | Keine ISBN | Keine ISBN |
8 | Text 12345623452345345345 | Text 12345623452345345345 |
9 | 978-0-7432-7356-5 und 978-0-596-52068-7 | ISBN: 978-0-7432-7356-5 und ISBN: 978-0-596-52068-7 |
Muster: (\w{4})(\w{4})(\w{4})(\w{4})(\w{0,})
Ersetzung: \1 \2 \3 \4 \5
Vorkommen: 0
Das Muster (\w{4})(\w{4})(\w{4})(\w{4})(\w{0,}) sucht nach einer IBAN-Nummer ohne Leerzeichen:
(\w{4}) sucht nach 4 alphanumerischen Zeichen und speichert sie in einer Gruppe.
Wiederholungen davon gruppieren jeweils 4 weitere Zeichen.
(\w{0,}) nimmt den Rest der Zeichen (z. B. 2 bei DE-IBANs).
Die Ersetzung fügt zwischen den Gruppen Leerzeichen ein, um die Lesbarkeit zu verbessern.
Der Parameter Vorkommen = 0 sorgt dafür, dass alle IBAN-Nummern formatiert werden.
A | B | |
---|---|---|
1 | (\w{4})(\w{4})(\w{4})(\w{4})(\w{0,}) | |
2 | \1 \2 \3 \4 \5 | |
3 | 0 | |
4 | ||
5 | DE89370400440532013000 | DE89 3704 0044 0532 013000 |
6 | FR1420041010050500013M02606 | FR14 2004 1010 0505 00013M02606 |
7 | Kein IBAN | Kein IBAN |
8 | ES9121000418450200051332 | ES91 2100 0418 4502 00051332 |
9 | CH9300762011623852957 | CH93 0076 2011 6238 52957 |
Muster: \b[a-fA-F0-9]{32}\b|\b[a-fA-F0-9]{64}\b
Ersetzung: [HASH]
Vorkommen: 0
Das Muster \b[a-fA-F0-9]{32}\b|\b[a-fA-F0-9]{64}\b sucht nach Hashes mit einer Länge von 32 (MD5) oder 64 (SHA256) Zeichen:
[a-fA-F0-9]{32} sucht nach einer 32-stelligen Hexadezimal-Zeichenkette.
| erlaubt eine Alternative (entweder 32 oder 64 Zeichen).
[a-fA-F0-9]{64} sucht nach einer 64-stelligen Hexadezimal-Zeichenkette.
\b stellt sicher, dass der Hash an einer Wortgrenze beginnt und endet.
Die Ersetzung [HASH] anonymisiert alle gefundene Hashes. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Hashes ersetzt werden.
A | B | |
---|---|---|
1 | \b[a-fA-F0-9]{32}\b|\b[a-fA-F0-9]{64}\b | |
2 | \[HASH\] | |
3 | 0 | |
4 | ||
5 | MD5: d41d8cd98f00b204e9800998ecf8427e | MD5: [HASH] |
6 | SHA256: 9d5ed678fe57bcca610140957afab5712ed7e1fa18f69d67bbf6c3e589d4f911 | SHA256: [HASH] |
7 | Kein Hash hier | Kein Hash hier |
8 | Test d41d8cd98f00b204e9800998ecf8427e Test | Test [HASH] Test |
9 | SHA512: (nicht erfasst) | SHA512: (nicht erfasst) |
Muster: (\d{5})\s([A-Za-zäöüÄÖÜß\s-]+)
Ersetzung: PLZ: \1, Ort: \2
Vorkommen: 0
Das Muster (\d{5})\s([A-Za-zäöüÄÖÜß\s-]+) sucht nach einer Postleitzahl (PLZ) und einem Ortsnamen:
(\d{5}) sucht genau 5 Ziffern für die PLZ und speichert sie in Gruppe 1.
\s erwartet ein Leerzeichen.
([A-Za-zäöüÄÖÜß\s-]+) sucht den Ortsnamen, bestehend aus Buchstaben, Leerzeichen und Bindestrichen, und speichert ihn in Gruppe 2.
Die Ersetzung PLZ: \1, Ort: \2 formatiert die extrahierten Werte in ein beschreibendes Format. Der Parameter Vorkommen = 0 sorgt dafür, dass alle relevanten Vorkommen ersetzt werden.
A | B | |
---|---|---|
1 | (\d{5})\s([A-Za-zäöüÄÖÜß\s-]+) | |
2 | PLZ: \1, Ort: \2 | |
3 | 0 | |
4 | ||
5 | 10115 Berlin | PLZ: 10115, Ort: Berlin |
6 | 80331 München | PLZ: 80331, Ort: München |
7 | Hamburg ohne PLZ | Hamburg ohne PLZ |
8 | 50667 Köln | PLZ: 50667, Ort: Köln |
9 | 01067 Dresden und 01109 Klotzsche | PLZ: 01067, Ort: Dresden und PLZ: 01109, Ort: Klotzsche |
Hinweis zu Datumswerten für die Excel Funktion REGEXERSETZEN
Hinweis: In Excel werden Datumswerte intern als fünfstellige Zahlen gespeichert. Beispielsweise entspricht das Datum 20.12.2024 der Zahl 45676 (Anzahl der Tage seit dem 1. Januar 1900). Das führt dazu, dass ein regulärer Ausdruck wie ^\d{5}$ WAHR zurück liefert, wenn ein Datum im normalen Datumsformat eingegeben wurde.
Damit reguläre Ausdrücke auf solche Inhalte angewendet werden können, müssen die Zellen als Text formatiert sein, bevor die Werte eingegeben werden. Alternativ könnt Ihr die Werte explizit mit einem ' (Apostroph) voran als Text speichern, z. B. '01.01.2025.
Das sind auch nur einfache Beispiele. Es bieten sich für die Überprüfung vom Datum natürlich weitaus bessere Möglichkeiten an.
Muster: \b\d{2}.\d{2}.\d{4}\b
Ersetzung: {Datum}
Vorkommen: 0
Das Muster \b\d{2}\.\d{2}\.\d{4}\b sucht nach Datumsangaben im Format "TT.MM.JJJJ":
\d{2} sucht genau zwei Ziffern für den Tag.
\. erwartet den Punkt als Trennzeichen.
\d{2} sucht genau zwei Ziffern für den Monat.
\. erwartet den nächsten Punkt.
\d{4} sucht genau vier Ziffern für das Jahr.
Die Ersetzung {Datum} markiert jedes gefundene Datum im Text. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Datumsangaben markiert werden.
Hinweis: In Zelle A5 wurde das Datum so eingetragen: '01.01.25 damit es als Text und nicht als fünfstellige Zahl ausgelesen wird.
A | B | |
---|---|---|
1 | \b\d{2}\.\d{2}\.\d{4}\b | |
2 | \{Datum\} | |
3 | 0 | |
4 | ||
5 | 01.01.2025 | {Datum} |
6 | Test am 25.12.2023 | Test am {Datum} |
7 | Kein Datum hier | Kein Datum hier |
8 | 30.02.2023 (ungültig) | {Datum} (ungültig) |
9 | 01.01.2023 und 31.12.2024 | {Datum} und {Datum} |
Muster: \b(\d{2}).(\d{2}).(\d{4})\b
Ersetzung: Datum: \1.\2.\3
Vorkommen: 0
(\d{2}): Capturing Group 1 speichert den Tag (2 Ziffern).
\.: Sucht den Punkt als Trennzeichen.
(\d{2}): Capturing Group 2 speichert den Monat (2 Ziffern).
\.: Sucht den zweiten Punkt.
(\d{4}): Capturing Group 3 speichert das Jahr (4 Ziffern).
Hinweis: Zelle a5 und A8 musste ich ein ' voranstellen damit es als Text verarbeitet werden kann.
A | B | |
---|---|---|
1 | \b(\d{2})\.(\d{2})\.(\d{4})\b | |
2 | Datum: \1.\2.\3 | |
3 | 0 | |
4 | ||
5 | 01.01.2024 | Datum: 01.01.2024 |
6 | Test am 25.12.2023 | Test am Datum: 25.12.2023 |
7 | Kein Datum hier | Kein Datum hier |
8 | 31.12.2024 | Datum: 31.12.2024 |
9 | 30.02.2023 (ungültig) | Datum: 30.02.2023 (ungültig) |
Hinweis zu Uhrzeiten für die Excel Funktion REGEXERSETZEN
Hinweis: Ähnlich wie mit dem Datum müsst Ihr die Uhrzeiten erst als Text formatieren damit der reguläre Ausdruck korrekt funktioniert. Ihr könnt auch ' Zeichen davor setzen damit es klappt.
Muster: \b\d{2}:\d{2}\b
Ersetzung: {Uhrzeit}
Vorkommen: 0
Das Muster \b\d{2}:\d{2}\b sucht nach Uhrzeiten im Format "HH:MM":
\d{2} sucht genau zwei Ziffern für die Stunde.
: erwartet den Doppelpunkt.
\d{2} sucht genau zwei Ziffern für die Minuten.
Die Ersetzung {Uhrzeit} markiert jede gefundene Uhrzeit. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Uhrzeiten markiert werden.
Hinweis: In Zelle A5 wurde die Zahl so eingetragen: '14:30:00 damit sie als Text formatiert wird und korrekt mit dem Muster funktioniert.
A | B | |
---|---|---|
1 | \b\d{2}:\d{2}\b | |
2 | \{Uhrzeit\} | |
3 | 0 | |
4 | ||
5 | 14:30:00 | {Uhrzeit}:00 |
6 | Startzeit: 08:15 | Startzeit: {Uhrzeit} |
7 | Kein Zeitwert hier | Kein Zeitwert hier |
8 | 23:59 und 00:00 | {Uhrzeit} und {Uhrzeit} |
9 | Ungültig: 25:61 | Ungültig: {Uhrzeit} |
Muster: \b(\d{2}):(\d{2})\b
Ersetzung: Uhrzeit: \1:\2
Vorkommen: 0
(\d{2}): Capturing Group 1 speichert die Stunden (2 Ziffern).
: Sucht den Doppelpunkt.
(\d{2}): Capturing Group 2 speichert die Minuten (2 Ziffern).
Die Ersetzung Uhrzeit: \1:\2 gibt die Uhrzeit im Format "HH:MM" aus. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Uhrzeiten erfasst werden.
Hinweis: Zelle A5 musste ich ein ' Zeichen voranstellen damit es im Textformat korrekt verarbeitet werden kann.
A | B | |
---|---|---|
1 | \b(\d{2}):(\d{2})\b | |
2 | Uhrzeit: \1:\2 | |
3 | 0 | |
4 | ||
5 | 04:30:00 | Uhrzeit: 04:30:00 |
6 | Startzeit: 08:15 | Startzeit: Uhrzeit: 08:15 |
7 | Kein Zeitwert hier | Kein Zeitwert hier |
8 | 23:59 und 00:00 | Uhrzeit: 23:59 und Uhrzeit: 00:00 |
9 | Ungültig: 25:61 | Ungültig: Uhrzeit: 25:61 |
Muster: \b\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2}\b
Ersetzung: \{DatumUhrzeit\}
Vorkommen: 0
Das Muster \b\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2}\b sucht nach Kombinationen aus Datum und Uhrzeit:
\d{2}\.\d{2}\.\d{4} sucht ein Datum im Format "TT.MM.JJJJ".
\s erwartet ein Leerzeichen zwischen Datum und Uhrzeit.
\d{2}:\d{2} sucht eine Uhrzeit im Format "HH:MM".
Die Ersetzung {DatumUhrzeit} markiert jede gefundene Kombination. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Kombinationen markiert werden.
Hinweis: In Zelle A5 habe ich Datum und Uhrzeit so eingetragen '01.01.2024 12:30:00 damit es als Text formatiert wird und korrekt mit dem Muster funktioniert.
Warum steht in Zelle B5 nicht {DatumUhrzeit}? Weil \b eine Wortgrenze sucht, und zwar direkt nach den Minuten. Die Sekunden sind dadurch zu viel.
A | B | |
---|---|---|
1 | \b\d{2}\.\d{2}\.\d{4}\s\d{2}:\d{2}\b | |
2 | \{DatumUhrzeit\} | |
3 | 0 | |
4 | ||
5 | 01.01.2024 12:30:00 | 01.01.2024 12:30:00 |
6 | Start: 25.12.2023 18:45 | Start: {DatumUhrzeit} |
7 | Kein Datum hier | Kein Datum hier |
8 | 31.12.2024 23:59 und 01.01.2025 00:00 | {DatumUhrzeit} und {DatumUhrzeit} |
9 | Ungültig: 30.02.2023 25:00 | Ungültig: {DatumUhrzeit} |
Muster: \b(\d{2})\.(\d{2})\.(\d{4})\s(\d{2}):(\d{2})\b
Ersetzung: Datum: \1.\2.\3, Uhrzeit: \4:\5
Vorkommen: 0
(\d{2})\.(\d{2})\.(\d{4}): Capturing Groups 1, 2 und 3 speichern Tag, Monat und Jahr.
\s: Erwartet ein Leerzeichen zwischen Datum und Uhrzeit.
(\d{2}):(\d{2}): Capturing Groups 4 und 5 speichern die Stunden und Minuten.
Die Ersetzung Datum: \1.\2.\3, Uhrzeit: \4:\5 gibt sowohl Datum als auch Uhrzeit aus. Der Parameter Vorkommen = 0 sorgt dafür, dass alle Kombinationen erfasst werden.
Hinweis: In Zelle A1 und A8 wurde ein ' Zeichen vor dem Eintrag hinzugefügt, damit es im Textformat direkt verarbeitet werden kann.
A | B | |
---|---|---|
1 | \b(\d{2})\.(\d{2})\.(\d{4})\s(\d{2}):(\d{2})\b | |
2 | Datum: \1.\2.\3, Uhrzeit: \4:\5 | |
3 | 0 | |
4 | ||
5 | 01.01.2024 12:30:00 | 01.01.2024 12:30:00 |
6 | Start: 25.12.2023 18:45 | Start: Datum: 25.12.2023, Uhrzeit: 18:45 |
7 | Kein Datum hier | Kein Datum hier |
8 | 31.12.2024 23:59:00 | 31.12.2024 23:59:00 |
9 | 30.02.2023 25:00 | Datum: 30.02.2023, Uhrzeit: 25:00 |
Hinweis zu Zahlen mit 1000er Trennpunkte für die Excel Funktion REGEXERSETZEN
Excel zeigt Zahlen mit Tausenderpunkten häufig nur als Formatierung an, speichert sie jedoch intern ohne diese Trennzeichen. Um reguläre Ausdrücke darauf anwenden zu können, sollten solche Zahlen explizit als Text eingegeben werden, z. B. '1.234,56.
Muster: \b\d{1,3}(?:\.\d{3})+(?:,\d{2})?\b
Ersetzung: \{Zahl\}
Vorkommen: 0
\b\d{1,3}: Sucht nach 1–3 Ziffern am Anfang.
(?:\.\d{3})+:
Erlaubt mindestens einen Tausendertrennungspunkt mit exakt drei Ziffern.
Das + stellt sicher, dass es sich um mindestens eine Tausendergruppe handelt.
(?:,\d{2})?:
Optional: Ein Komma gefolgt von genau zwei Nachkommastellen.
\b: Markiert die Wortgrenzen, um vollständige Zahlen zu erkennen.
Hinweis: Zelle A5 und A6 müssen als Text formatiert werden damit es funktioniert oder Ihr stellt ein ' direkt vor die Zahl.
A | B | |
---|---|---|
1 | \b\d{1,3}(?:\.\d{3})+(?:,\d{2})?\b | |
2 | \{Zahl\} | |
3 | 0 | |
4 | ||
5 | 1.234,56 | {Zahl} |
6 | 12.345.678,9 | {Zahl},9 |
7 | 123456 ohne Punkt | 123456 ohne Punkt |
8 | 1.000 und 100,00 | {Zahl} und 100,00 |
9 | Ungültig: 1.23.456 | Ungültig: 1.{Zahl} |
So, dass soll es jetzt erst einmal gewesen sein. Ich denke mit der Zeit wird noch einiges hinzukommen.
Ihr möchtet Euch gerne für meine Mühe bedanken?
Hier habt Ihr die Möglichkeit AMAZON – Wunschliste [HIER KLICKEN]
Vielen Dank für Eure Unterstützung 🙂
Nachfolgend könnt Ihr Euch gerne das Video anschauen um erste Grundlagen kennenzulernen. Außerdem seht Ihr wie ich die Tabelle aufgebaut habe.