判断E-Mail的合法性

转载 2005年02月26日 14:23:00

unit mainunit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
function IsVaildEmailAddr(EmailAddr:String):boolean;
var
 Number,I:integer;  //Number用于给字符'@'计数
 TempStr:String;
begin
 TempStr:=EmailAddr;
 Number:=0;
 for I:=1 to Length(TempStr) do
   begin
     if (TempStr [I]='@') then
       INC(Number);
   end;
   if ((Number =0)or(Number >1)) then
    Result:=False//如果不含有字符'@',或者其个数大于1,则不合法
   else
   begin
    if ((TempStr [1]='@')or (TempStr [length(TempStr)]='@')) then
     Result:=False//如果字符'@'的位置在字符串开头或者末尾,则不合法
    else
    begin
     I:=pos('@',TempStr);//获取字符'@'在字符串当中的位置
     delete(TempStr,1,I);//获取字符串中字符'@'后面的剩余子串
     if (Length(TempStr)<3) then
      Result:=False       //如果剩余子串的长度小于3,则不合法
     else
     begin
      if ((pos('.',TempStr)=0)or(pos('.',TempStr)=length(TempStr))
          or (pos('.',TempStr)=1))then
       Result:=False//如果剩余的子串当中不含有字符'.',或者其位置在//子串的开头或者末尾,则不合法
      else
       Result:=True;      //以上的判断都通过,则表示地址字符串为合法
     end;
    end;
   end;
 end;


procedure TForm1.Button1Click(Sender: TObject);
begin
 if (Edit1.Text<>'')then
  begin
   if IsVaildEmailAddr(Edit1.Text) then
    ShowMessage('您输入的电子邮件地址格式合法!')
   else
    ShowMessage('您输入的电子邮件地址格式不合法!');
  end;
end;

end.

Python网络编程:E-mail服务(八) 实现抄送和密送功能

本文介绍如何实现SMTP邮件的抄送和密送功能

JavaScript-- 表单验证、 E-mail 验证

完成一个较为完整的用户注册页面。 1:要求用户输入用户名时只能够输入英文、数字和下划线 2:要求用户输入的密码和确认密码必须一致 3:要求用户上传本地磁盘中的一个图片文件作为头像 4:要求用户输入验证...

In the company, how to write an E-mail(在公司里,如何写好一封电子邮件)

看到一篇很不错的文章,分享给大家。 定义电子邮件的「好」是很难的。 若你写了一封「加薪申请」给老板,哪怕对方只回复俩字「OK」,那也算是好得令人动容。但如果邮件来自...
  • mad1989
  • mad1989
  • 2013年08月12日 09:41
  • 5967

Python网络编程:E-mail服务(四) 编写传统邮件

本文通过标准Python库的email模块提供MIMEText类,进行传统email的编写,从而对email模块有一个初步的认识。...

如何用Java来编写可根据SMTP和POP3协议来收发E-mail的Java Applet。

一.Java网络编程初步   1.建立TCP/IP连接   Socket类中的构造函数Socket(String host,int port)用于创建一个Socket,并与指定的主机(host)及...

MTK中E-MAIL常见问题总结

一、关于hotmail邮箱经常出现的异常error收集 在设置邮箱账号的时候用户名和邮箱地址必须设置成一样的。这点很重要,请在设置的时候仔细check。 1.目前hotmail的邮箱server并没有...
  • feosun
  • feosun
  • 2011年02月25日 02:07
  • 1111

织梦DedeCMS会员注册邮件(E-mail)验证设置

织梦DedeCMS会员注册邮件(E-mail)验证设置 DEDECMS 会员注册邮件验证设置是每个应用者为会员打开的大门 如何设置好会员注册邮件验证,下面我们就开始旅程: 第一...
  • dvccxhk
  • dvccxhk
  • 2014年10月11日 12:48
  • 497

Sicily.Handling e-mail addresses

Description Time Limit: 1sec    Memory Limit:256MB You've gathered some e-mail addresses fro...

Timus Online Judge 1577 E-mail(字符串DP)

转自:http://www.cnblogs.com/yu-chao/archive/2012/05/27/2520393.html 十分感谢!题目大意: 给你两个串s1和s2,你需要找到一...

How to Disable Outlook’s Junk E-mail Filter

For Microsoft Outlook 2007, Outlook 2010, Outlook 2013. Some people don’t want to use Outlook’s...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:判断E-Mail的合法性
举报原因:
原因补充:

(最多只允许输入30个字)