Email valideren

Status
Niet open voor verdere reacties.

geenID

Gebruiker
Lid geworden
1 jul 2009
Berichten
312
Hallo, ik heb het volgende probleem. Ik heb een programma gemaakt waar het nu een email moet valideren of de gebruiker een correcte email heeft ingevuld.
Ik heb wel code gevonden, maar in deze zitten wat errors die ik niet kan oplossen. Ik hoop dat iemand mij kan helpen?
 
Laatst bewerkt:
check gaat volgens mij ook fout bij .com.uk adressen. Verder mogen er geen hoofdletters in een emailadres.

Andere vraag. Waarom valideren. Als iemand namelijk onzin wil invullen dan doet ie dat toch wel. En typefouten, waarmee je je gebruiker het meest zou kunnen helpen, kun je toch niet detecteren.
 
Het is dus niet te bedoeling dat die betreffende persoon onzin gaat invullen.

Maar terug naar de hoofdvraag. Weet je een oplossing?
 
Even de discussie aanzwengelen. Met welke code denk je bijv. te kunnen ontdekken dat het emailadres beatrix@huistenbosch.nl onjuist is en zeker niet bij mij hoort?


En terug naar het onderwerp. Welke fouten krijg je dan bij je code?
 
Het gaat er niet om of die email nou echt van jou is, maar het gaat erom dat iemand een correct email invult.

Dus bijvoorbeeld:

Niet: ditisgeen%^ echte email.com
Wel: ditisgeenechteemail@email.com

Snap je?



Fouten:

Code:
  if (i = 0) or (pos('..', Value)  0) then
---> Missing operator or semicolon
Code:
or ((Length(serverPart)     then Exit;
---> expected but 'THEN' found
Code:
 if (i  (Length(serverPart) - 2)) then
----> Type of expression must be BOOLEAN

btw: ik gebruik delphi 7
en thanks for je snelle reply's.


EDIT: Probleem opgelost, bedankt voor je soort van hulp
 
Laatst bewerkt:
http://regexpstudio.com/TRegExpr/TRegExpr.html

De download bevat:
- een Delphi RegEx class
- een voorbeeld projectje dat email adressen 'versiert' (Text2HtmL)

Komt erop neer dat je email adressen met reguliere expressies gaat valideren.

Code fragment uit die download:

Code:
function DecorateEMails (const AText : string) : string;
 const
  MailTemplate =
   '[_a-zA-Z\d\-\.]+@[_a-zA-Z\d\-]+(\.[_a-zA-Z\d\-]+)+';
 var
  PrevPos : integer;
 begin
  Result := '';
  PrevPos := 1;
  with TRegExpr.Create do try
     Expression := MailTemplate;
     if Exec (AText) then
      REPEAT
        Result := Result + System.Copy (AText, PrevPos,
         MatchPos [0] - PrevPos) + '<a href="mailto:' + Match [0] + '">' + Match [0] + '</a>';
        PrevPos := MatchPos [0] + MatchLen [0];
      UNTIL not ExecNext;
     Result := Result + System.Copy (AText, PrevPos, MaxInt); // Tail
    finally Free;
   end;
 end; { of function DecorateEMails
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan