E-mail Adressen aus txt-Datei auslesen
Collapse
X
-
Junge, ich weiß eben nciht, wie ich das so regle, dass er das wort mit dem @ ausgibt... wenn ich alles wüsste, würd eich hie rnciht posten.
Ich habe noch nie etwas mit Regex gemacht, also kommt das nciht in frage, wenn ihr mir nciht erklärt wie ich das machen muss.
Ist das sos chwierig?? Ich sitze da jetzt den ganzen Tag dran und ihr Experten brächutet dafür 1 Minute, schreibt das doch einfach ganz kurz und knapp hier hin. Wäre echt nett.
Last edited by sinusweb; 24-10-2006, 17:04.
Comment
-
Klar, aber der Experte musste es sich auch vorher aneignen und verdient jetzt mit jeder Minute Geld.
http://www.php-resource.de/tutorials/read/10/1/ Vielleicht hilf das ja wenigstens n bisschen.
ansonsten verfolge doch den Ansatz, den Wahsaga ins Spiel gebracht hat. strstr() kennst du ja nun.
Comment
-
Okay,
habe ich mich mit befasst.
PHP Code:<?
// Nur @
$muster = "/@/i";
// Liste der gefundenen Einträge
$bla = preg_grep($muster, file('adressen.txt'));
// Ausgabe
foreach ($bla as $out) {
$email=$out
$domain = strstr($email, '@');
echo $domain; // Ausgabe: @example.de
}
?>
soweit so gut...nun wird mir aus jeder zeile die email adresse ab dem @ zeichen angezeigt, aber nciht der name vor dem @ zeichen
@example.de... möchte, dass er blabla@example.de für jede zeile ausgibt, wie macht man das????Danke im voraus...
Comment
-
-
$tld = "(biz|com|info|int|name|net|org|pro|arpa|aero|cat|coop|edu|gov|jobs|mil|mobi|museum|tel|travel|ac|ad |ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|ax|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw| by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|eh|er|es|et|e u|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie |il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv| ly|ma|mc|md|me|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|n u|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|rs|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl |sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tl|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz| va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)";
preg_match(/[\ ]([a-z0-9_][\.\-]?)+@([a-z0-9][\.\-]?)*[a-z0-9]\.".$tld."/i",$string)Last edited by jmc; 24-10-2006, 18:32.
Comment
-
Original geschrieben von sinusweb
Habt ihr denn keine Ahnung???
da ist doch das Problem, dass ich in einigen Zeilen keine email Adresse angegeben habe und somit dann die Straße ausgegeben werden würde...I don't believe in rebirth. Actually, I never did in my whole lives.
Comment
-
da ist doch das Problem, dass ich in einigen Zeilen keine email Adresse angegeben habe und somit dann die Straße ausgegeben werden würde...
Habt ihr denn keine Ahnung???
Comment
-
PHP Code:<?
$muster = "/@/i";
// Liste der gefundenen Einträge
$mails = preg_grep($muster, file('adressen.txt'));
// Ausgabe
foreach ($mails as $ad) {
echo "$ad<br>";
}
?>
Die Zeilen mit den Email Adressen werden erfasst! OK
in der foreach anweisung mache ich ja vorgaben für jede Zeile, da woltl eich jetzt noch die Anweisung reinbringen, dass er das letzte Wort ausgibt (email adresse ist immer das letzte Wort) >
array_pop(); aber ich muss die zeile ja erst in ein array umwandeln,w ie geht das?
PHP Code:foreach ($mails as $ad) {
array_pop($ad)=$ad2;
echo "$ad2<br>";
}
Fatal error: Can't use function return value in write context in /srv/www/httpd/phost/k/com/pytalhost/klasse/web/test/adresse/mail.php on line 13
Ich verstehe nciht, was ich verbändern soll. Könnt ihr mir da weiterhelfen?
Comment
-
Okay. Habe mir alles nochmal durchgelesen.
folgender script ist entstanden und funktioniert NICHT.
PHP Code:<?
$muster = "/@/i";
// Liste der gefundenen Einträge
$mails = preg_grep($muster, file('adressen.txt'));
// Ausgabe
foreach ($mails as $ad) {
$ad2= explode (' ',$ad);
array_pop($ad2)=$ad5;
echo "$ad5<br>";
}
?>
on line 13
sprich: da muss der fehler sein
PHP Code:array_pop($ad2)=$ad5;
Comment
Comment