So extrahieren Sie E-Mail-Adressen

Manchmal haben Sie Daten von Ihrer Website oder Ihrer Unternehmenssoftware exportiert
, die Bestellinformationen oder Kundendaten enthalten.
Möglicherweise benötigten Sie nur die E-Mail-Adresse und das Bestelldatum.

Eine Möglichkeit besteht darin, alle Daten in Excel zu importieren, die unerwünschten Spalten zu löschen
und die verbleibenden zu exportieren.

This may not work well if the email field also contains the email address description,
for example: “Dave Martin <davemartin@bogusemail.com>”.

Es kann mühsam sein, wenn man die Aufgabe mehrmals wiederholen muss
oder wenn man alle Schritte jemand anderem erklären muss.


Extrahieren Sie die gewünschten Daten mithilfe von „regex“

Ein regulärer Ausdruck (kurz „regex“ oder „regexp“ genannt),
ist eine Zeichenfolge, die ein Muster angibt, nach dem im Text gesucht wird.

Ein ganz einfacher Fall ist es, ein Wort, das auf zwei verschiedene Arten geschrieben wird, in einem Texteditor zu finden,
der reguläre Ausdruck seriali[sz]e passt sowohl auf „serialise“ als auch auf „serialize“.

Eine komplexere Situation stellt die Syntax zur Identifizierung im Text dar


Tutorial zu regulären Ausdrücken (Regex)

Empfohlenes YouTube-Video
„38 Minuten, die sich gelohnt haben, das war es absolut wert “:

So finden Sie beliebige Textmuster
(ab Minute 25 wird die Syntax zum Extrahieren von E-Mail-Adressen erklärt)

Spickzettel zur Verwendung regulärer Ausdrücke


RegExr-Online-Tool

Reguläre Ausdrücke werden in der Regel
in fortgeschrittenen Texteditoren wie Notepad++ oder Atom unterstützt.

Es stehen auch kostenlose Online-Tools zur Verfügung, darunter:
https://regexr.com – ein Online-Dienst zum Erlernen, Erstellen und Testen regulärer Ausdrücke.

Erläuterung der Weboberfläche:
„Expression“ ist das Feld, in das die Regex-Syntax eingegeben wird.
„Text“ ist der Inhalt, den Sie analysieren möchten.
Unter „Tools > List“ werden die Ergebnisse der Extraktion angezeigt.


Beispiel 1: Um nur die E-Mail-Adresse zu extrahieren

Ausdruck:
[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+

Text:

Dave Martin
615-555-7164
173 Main St., Springfield RI 55924
davemartin@bogusemail.com

Charles Harris
800-555-5669
969 High St., Atlantis VA 34075
charlesharris@bogusemail.com

Eric Williams
560-555-5153
806 1st St., Faketown AK 86847
laurawilliams@bogusemail.com

Extras > Liste:
$&\n

Ergebnis:

davemartin@bogusemail.com
charlesharris@bogusemail.com
laurawilliams@bogusemail.com

Beispiel 2: Um die E-Mail-Adresse und das Datum zu extrahieren

Ausdruck:
","(.*?)([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)(.*?)",".*",(\d{2}\.\d{2}\.\d{4})

Text:

"lorem ipsum dolor sit amet","Robert Farrell <rmfarrell@bogusemail.com>","",02.01.2024, ,5379,
"consectetur adipiscing elit","""Mesa, Rene <rmesa@bogusemail.com>""","",04.01.2024, ,20826,
"sed do eiusmod tempor incididunt","Antonio Bugan <antonio@bogusemail.com>","",04.01.2024, ,2856,
"ut labore et dolore magna aliqua","Crawley Down Tennis Club <hello@bogusemail.com>","",05.01.2024, ,4453,

Extras > Liste:
$2,$4\n

Ergebnis:

rmfarrell@bogusemail.com,02.01.2024
rmesa@bogusemail.com,04.01.2024
antonio@bogusemail.com,04.01.2024
hello@bogusemail.com,05.01.2024

Spickzettel zur Verwendung regulärer Ausdrücke
.       - Any Character Except New Line
\d      - Digit (0-9)
\D      - Not a Digit (0-9)
\w      - Word Character (a-z, A-Z, 0-9, _)
\W      - Not a Word Character
\s      - Whitespace (space, tab, newline)
\S      - Not Whitespace (space, tab, newline)

\b      - Word Boundary
\B      - Not a Word Boundary
^       - Beginning of a String
$       - End of a String

[]      - Matches Characters in brackets
[^ ]    - Matches Characters NOT in brackets
|       - Either Or
( )     - Group

Quantifiers:
*       - 0 or More
+       - 1 or More
?       - 0 or One
{3}     - Exact Number
{3,4}   - Range of Numbers (Minimum, Maximum)

Quelle: GitHub-Codeausschnitte


Zurück zum Anfang