PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : In einer Datei die Email Adressen rausfischen?



KillAV
08.10.2007, 18:33
Ich habe vor aus einer Datei alle Email Adressen auslesen zu lassen.
d.h das in derAngegeben Datei nach Mail Adressen gesucht werden soll.
Doch irgendwie fehlt mir der Ansatz.
Vielleicht hat jemand en kleinen Code für mich?
:lol:

rob00n
08.10.2007, 18:38
Lade die Datei in eine String.
Dann suchst du im String nach "@". Wenn danach dann irgendwo .de/.com/.net/.wtf usw. kommt soll er zurückgehen bist zu einem Leerzeichen oder einer "(" oder so findet. Und dann wieder bis zum .de/.com/.net/.wtf alles in einen String schreiben. So hast du, wenn er durch die Datei durch ist, alle Adressen in nem zweiten String.
Ich weis nicht obs einfacher geht. Aber so währe mein Ansatz.

hund313
10.10.2007, 01:53
lade die datei mit perl...so z.b.


open F, "<datei.txt" or die $!;
foreach(<F>)
{
if(/^.*([a-zA-Z0-9]+\@[a-zA-Z0-9]+\.[a-zA-Z]+.*$/)
{
print "email: $1\n";
}
}
fclose(F);

regex is mächtig ;). wenns keine binary datei ist sollte das funzen. und wenns eine ist kannste auch leicht mit z.b. c++ die datei durchgehen (z.b. mit getc und putc) und alle \0 (also string-terminatoren) durch irgendnen anderen scheiss ersetzen.
die regex kannste noch verfeinern (so zeichen wie _-!"§$%&/() einfügen, aber dabei teilweise net das magische \ davor vergessen)...