Definitivamente como hay otros compañeros que han objetado, hay maneras mucho mas sencillas para validar un correo electronico, y en cuanto a validación se refiere RegEX (Expresión Regular) es la mejor solución/opción al caso.
Con muy poco esfuerzo podremos tener un verificador de Correos Electronicos en unos pocos minutos.
Requerimientos:
Código:
Libreria: TPerlRegEx
Veamos como podemos validar un Correo Electronico en un formulario basico:
Código:
(x1) Edit = edt1
(x1) Botón = btn1
(x1) Label = lbl1
Variables Globales:
Código:
var
parser: TPerlRegEx;
list: TStringList;
found: boolean;
str: string;
i: Integer;
strToMatch: string;
Codigo:
Código:
try
list := TStringList.Create;
try
parser := TPerlRegEx.Create;
try
parser.RegEx := '(^[\w-]+(?:\.[\w-]+)*@(?:[\w-]+\.)+[a-zA-Z]{2,7}$)';
strToMatch := edt1.Text;
parser.Subject := strToMatch;
found := parser.Match;
if found = True then
begin
lbl1.Caption := 'VALIDO!';
end
else
begin
lbl1.Caption := 'INVALIDO!';
end;
finally
parser.Free;
end;
finally
list.Free;
end;
except
on E: Exception do
Application.MessageBox(PChar(E.Message),'Verificador de Correos Electronicos', MB_OK);
end;
Nota: Como no puedo aun poner links ni imagenes, no puedo poner como se ve mi formulario, ni dar referencias de donde saque la información, pero si saben buscar en Google, sabrán buscar por aqui y por allá y darán con el martillo en el clavo
Cabe mencionar que la Expresión Regular que se utiliza en este caso, identifica y reconoce el 99.99% de los Correos Electronicos!