Für eine E-Mail überprüfung habe ich mir einen Sckript heruntergeladen, habe aber nicht verstanden was die Zeichen oder Escapesequenzen im einzelnen bedeuten.
if (ereg("[_a-zA-Z0-9-]+(.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+.)+([a-zA-Z]{2,3})", $mail))...
Kann mir das jemand erläutern?
Nun weisst mich sicher jemand darauf hin, dass ich in Self PHP mal unter ereg() suchen soll. Um dies zu vermeiden; ich kenne den Syntax von ereg() allerdings sind in Self PHP wie auch in der PHP eigenen Dokumentation Zeichen wie das . nicht erklährt.
Das halte ich für ein Gerücht, zumindest was die PHP-Anleitung angeht, Du solltes mehr stöbern :)
\ ist (wie eigentlich überall) ein Escape-Zeichen, das mit dem nachfolgenden irgendwas anstellt. Der Punkt steht ansich für ein beliebiges Zeichen in der Quelle, zusammen mit dem \ davor heißt das dann aber einfach nur "ein Punkt".
Ich behaupte mal, daß der Teil vor dem @ eine Zeichenkette aus "Buchstaben, Zahlen, dem Unter- und dem Bindestrich sowie dem Punkt" darstellt, wobei der Punkt nicht als erstes erscheinen darf (deshalb die Wiederholung von "[_a-zA-Z0-9-]").
Der Teil hinterm @ ist wiederum eine Zeichenkette aus "Buchstaben und Ziffern sowie dem Bindestrich, gefolgt von einem Punkt" (und das ganze gern auch mehrmals) und beendet durch zwei oder drei Buchstaben.
Ich bitte um Hilfe
Die PHP-Anleitung hilft Dir weiter, insbesondere die Seite "Pattern Syntax" (http://www.php.net/manual/de/pcre.pattern.syntax.php) sowie die Hauptseite zu den regulären Ausdrücken nach POSIX (http://www.php.net/manual/de/ref.regex.php). Beide sollten sich auch in Deiner runtergeladenen Version finden, inklusive des Hinweises auf die manpage regex.7 und welchen Standard PHP verwendet.
Und am Ende der (Netz-)Seite zu ereg (http://www.php.net/manual/de/function.ereg.php) finden sich auch noch einige Verweise zu weiterführenden Anleitungen.
Ich für meinen Teil bin bis jetzt immer mit der genannten PCRE-Seite, die in der PHP-Anleitung drin ist, ausgekommen.
Gruß,
soenk.e