*jiriki*: Regulärer Ausdruck (Überprüfen der Mailadresse)

Hi Leute,
ist der folgende reguläre Ausdruck nicht ausreichend, um korrekte Mailadressen zu verifizieren:

[a-z0-9-\]+@[a-z0-9-\]+.[a-z]+

Ich will Unter- und Bindestriche erlauben, sowie alle Buchstaben und Ziffern vor und nach dem "@". Nach dem "." hinter dem "@" sollen nur noch Buchstaben erlaubt sein.
Mir unverständlicherweise erlaubt dieser Ausdruck aber auch Mailadressen mit einem ":". Was mach ich falsch, bzw. wie kann ich dieses Sonderzeichen / alle sonstigen Sonderzeichen explizit sperren?

Gruß, *jiriki*

  1. [a-z0-9-\]+@[a-z0-9-\]+.[a-z]+

    Ich denke mal, du hast die Begrenzer für Wortanfang und Wortende vergessen. Ohne diese dürfen vor und nach dem regulären Ausdruck ja beliebige andere Zeichen stehen. Probier mal Folgendes:

    ^\A[a-z0-9-\]+@[a-z0-9-\]+.[a-z]+$

    1. ^\A[a-z0-9-\]+@[a-z0-9-\]+.[a-z]+$

      Was bedeutet denn das "\A" am Anfang? Ich habs jetzt mal ohne "\A" übernommen, und es funzt. Danke!

      *jiriki*

      1. Hallo,

        ^\A[a-z0-9-\]+@[a-z0-9-\]+.[a-z]+$
        Was bedeutet denn das "\A" am Anfang?

        \A "matcht" den Stringanfang (warum da allerdings »^« und »\A« steht weiß ich nicht :-)).

        Ich habs jetzt mal ohne "\A" übernommen, und es funzt. Danke!

        nein, es "funzt" nicht, versuch mal eine Adresse in der Form »vorname.nachname@example.com« durch die Prüfung zu bekommen ...

        Grüße aus Nürnberg
        Tobias

        1. Hi,

          ^\A[a-z0-9-\]+@[a-z0-9-\]+.[a-z]+$
          Ich habs jetzt mal ohne "\A" übernommen, und es funzt. Danke!
          nein, es "funzt" nicht, versuch mal eine Adresse in der Form »vorname.nachname@example.com« durch die Prüfung zu bekommen ...

          Naja, als Ausgleich dafür werden Adressen wie bla@example.co.uk nicht durchgelassen, von so Dingen wie example@äoderöoderü.de gar nicht zu sprechen ;-)

          cu,
          Andreas

          --
          Warum nennt sich Andreas hier MudGuard?
          Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
  2. Hi,

    ist der folgende reguläre Ausdruck nicht ausreichend, um korrekte Mailadressen zu verifizieren:

    ja, er ist nicht ausreichend. Er ist sogar meilenweit davon entfernt.

    Ich will Unter- und Bindestriche erlauben, sowie alle Buchstaben und Ziffern vor und nach dem "@". Nach dem "." hinter dem "@" sollen nur noch Buchstaben erlaubt sein.

    Warum diese unglaublich immensen Einschränkungen?

    Mir unverständlicherweise erlaubt dieser Ausdruck aber auch Mailadressen mit einem ":".

    Mit jedem beliebigen Zeichen. Hauptsache es ist das, was Du unter einer korrekten eMail-Adresse verstehst, _enthalten_. Dieses Problem ist aber äußerst marginal.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes