jak WYDOBYĆ adresy e-mail
Czasami eksportujesz dane ze swojej strony internetowej lub oprogramowania firmowego
zawierające informacje o zamówieniu lub dane klienta.
Możliwe, że potrzebujesz jedynie adresu e-mail i daty zamówienia.
Jednym ze sposobów jest zaimportowanie wszystkich danych do programu Excel, usunięcie niepotrzebnych kolumn
i wyeksportowanie pozostałych.
Może to nie działać dobrze, jeśli pole adresu e-mail zawiera również opis adresu e-mail,
na przykład: „Dave Martin
Może to być uciążliwe, jeśli musisz powtarzać zadanie wiele razy
lub tłumaczyć wszystkie kroki komuś innemu.
Wyodrębnij żądane dane za pomocą „regex”
Wyrażenie regularne (w skrócie „regex” lub „regexp”)
to sekwencja znaków określająca pasujący wzorzec w tekście.
Bardzo prostym przypadkiem jest znalezienie słowa zapisanego na dwa różne sposoby w edytorze tekstu;
wyrażenie regularne seriali[sz]e pasuje zarówno do „serialise”, jak i „serialize”.
Bardziej złożoną sytuacją jest składnia identyfikacji w tekście
-
adresy e-mail:
[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+
źródło: stackoverflow - wyrażenie regularne wyodrębnia adres e-mail z ciągów znaków -
data:
\d{4}-\d{2}-\d{1,2}
źródło: stackoverflow — wyrażenie regularne do wyodrębniania daty z ciągu znaków
Samouczek dotyczący wyrażeń regularnych (Regex)
Polecany film na YouTube
„38 minut dobrze spędzonych, zdecydowanie warto” :
Jak dopasować dowolny wzór tekstu
(od 25. minuty wyjaśniono składnię wyodrębniania adresów e-mail)
Arkusz ściągawek dotyczący używania wyrażeń regularnych
Narzędzie online RegExr
Wyrażenia regularne są na ogół akceptowane
w zaawansowanych edytorach tekstu, takich jak Notepad++ czy Atom.
Dostępne są również bezpłatne narzędzia online, jednym z nich jest:
https://regexr.com - usługa online do nauki, tworzenia i testowania wyrażeń regularnych.
Wyjaśnienie interfejsu internetowego:
„Wyrażenie” to pole zawierające składnię wyrażenia regularnego.
„Tekst” to treść, którą chcesz przeanalizować.
Wyniki ekstrakcji zostaną wyświetlone w menu „Narzędzia > Lista”.
Przykład 1: wyodrębnienie tylko adresu e-mail
Wyrażenie:
[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+
Tekst:
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.comNarzędzia > Lista:
$&\n
Wynik:
davemartin@bogusemail.com charlesharris@bogusemail.com laurawilliams@bogusemail.comPrzykład 2: wyodrębnienie adresu e-mail i daty
Wyrażenie:
","(.*?)([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9_-]+)(.*?)",".*",(\d{2}\.\d{2}\.\d{4})
Tekst:
„lorem ipsum dolor sit amet”, „Robert Farrell<rmfarrell@bogusemail.com> ","",02.01.2024, ,5379, "consectetur adipiscing elita","""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,Narzędzia > Lista:
$2,$4\n
Wynik:
rmfarrell@bogusemail.com,02.01.2024 rmesa@bogusemail.com,04.01.2024 antonio@bogusemail.com,04.01.2024 hello@bogusemail.com,05.01.2024Arkusz ściągawek dotyczący używania wyrażeń regularnych
. - Dowolny znak z wyjątkiem nowej linii \d - Cyfra (0-9) \D - Nie jest cyfrą (0-9) \w - Znak słowa (az, AZ, 0-9, _) \W - Nie jest znakiem słowa \s - Biała spacja (spacja, tabulator, nowa linia) \S - Nie jest białą spacją (spacja, tabulator, nowa linia) \b - Granica słowa \B - Nie jest granicą słowa ^ - Początek ciągu $ - Koniec ciągu [] - Dopasowuje znaki w nawiasach [^ ] - Dopasowuje znaki NIE w nawiasach | - Albo lub ( ) - Kwantyfikatory grupy: * - 0 lub więcej + - 1 lub więcej ? - 0 lub jeden {3} - Dokładna liczba {3,4} - Zakres liczb (minimum, maksimum)źródło: fragmenty kodu github