判断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.

相关文章推荐

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

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

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

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

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...

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

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

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

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

C# - Regular Expression : Valid E-Mail Format

The following example verifies that a string is in valid e-mail format. Example The ...

MTK中E-MAIL常见问题总结

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

Coder-Strike 2014 - Round 1__E-mail Addresses

给定一个字符串,判断合法串的个数。对于形如str1@str2.str3的串,满足:str1包括数字、字母、下划线且由字母开头;str2由字母、数字组成;str3由字母组成;三个串均非空,且是连续的串分...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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