delphi 手机号/Email/传真号验证有效性

Posted westsoft

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi 手机号/Email/传真号验证有效性相关的知识,希望对你有一定的参考价值。

//Email验证
function TDeptCaptionFrm.EMailAddCheck(EmailAdd: string; var Errorcode: string): Boolean;

  function CheckAt(s: string): integer;
  var
    num, t: integer;
  begin
    num := 0;
    t := pos(@, s);
    while t <> 0 do
    begin
      inc(num);
      s := copy(s, t + 1, length(s) - t);
      t := pos(@, s);
    end;
    result := num;
  end;

var
  i, j: integer;
  str: string;
begin
  i := pos(@, EmailAdd);
  str := Copy(EmailAdd, i + 1, length(EmailAdd) - i);
  j := pos(., str);
  result := false;
  if i = 0 then
    Errorcode := 地址串中缺少"@"
  else if i = 1 then
    Errorcode := 第一位是"@",即缺少用户名
  else if i = Length(EmailAdd) then
    Errorcode := 最后一位是"@",即缺少服务器名
  else if j = 0 then
    Errorcode := 服务器名中缺少"."
  else if (j = 1) or (j = length(str)) then
    Errorcode := 用户名第一位或最后一位是"."
  else if CheckAt(EmailAdd) > 1 then
    Errorcode := 有多个"@"
  else
    result := true;
end;

 

//手机号验证
function TDeptCaptionFrm.IsMobileNumber(num: string): boolean;
begin
  Result := False;
  if length(trim(num)) <> 11 then
    Exit;
  if ((copy(num, 1, 2) <> 13) and (copy(num, 1, 2) <> 15)
  and (copy(num, 1, 2) <> 18) and (copy(num, 1, 2) <> 17)) then
    Exit;
  try
    StrToInt(copy(num, 3, 9));
    Result := True;
  except
  end;
end;

 

//座机号验证
function TDeptCaptionFrm.isTelNo(sValue: string): Boolean;
var
  i,m,n: Integer;
  sBegin,sEnd: string;
  sList: TStringList;
begin
  Result := False;
  m := Pos(-,sValue);
  if m = 0 then Exit;
  sBegin := Copy(sValue,1,m-1);
  sEnd := Copy(sValue,m+1,Length(sValue)-m);

  if Length(sBegin) > 5 then Exit;
  if Length(sEnd) > 8 then Exit;
  //判断纯数字
  for i := 0 to Length(sBegin)-1 do
  begin
    if not (sBegin[i+1] in [0..9]) then
      Exit;
  end;
  for i := 0 to Length(sEnd)-1 do
  begin
    if not (sEnd[i+1] in [0..9]) then
      Exit;
  end;

  sList := TStringList.Create;
  try
    sList.Add(010);
    sList.Add(020);
    sList.Add(021);
    sList.Add(022);
    sList.Add(023);
    sList.Add(024);
    sList.Add(025);
    sList.Add(027);
    sList.Add(028);
    sList.Add(029);
    sList.Add(0310);
    sList.Add(0311);
    sList.Add(0312);
    sList.Add(0313);
    sList.Add(0314);
    sList.Add(0315);
    sList.Add(0316);
    sList.Add(0317);
    sList.Add(0318);
    sList.Add(0319);
    sList.Add(0335);
    sList.Add(0349);
    sList.Add(0350);
    sList.Add(0351);
    sList.Add(0352);
    sList.Add(0353);
    sList.Add(0354);
    sList.Add(0355);
    sList.Add(0356);
    sList.Add(0357);
    sList.Add(0358);
    sList.Add(0359);
    sList.Add(0370);
    sList.Add(0371);
    sList.Add(0372);
    sList.Add(0373);
    sList.Add(0374);
    sList.Add(0375);
    sList.Add(0376);
    sList.Add(0377);
    sList.Add(0378);
    sList.Add(0379);
    sList.Add(0391);
    sList.Add(0392);
    sList.Add(0393);
    sList.Add(0394);
    sList.Add(0395);
    sList.Add(0396);
    sList.Add(0397);
    sList.Add(0398);
    sList.Add(0410);
    sList.Add(0411);
    sList.Add(0412);
    sList.Add(0413);
    sList.Add(0414);
    sList.Add(0415);
    sList.Add(0416);
    sList.Add(0417);
    sList.Add(0418);
    sList.Add(0419);
    sList.Add(0421);
    sList.Add(0423);
    sList.Add(0427);
    sList.Add(0429);
    sList.Add(0431);
    sList.Add(0432);
    sList.Add(0433);
    sList.Add(0434);
    sList.Add(0435);
    sList.Add(0436);
    sList.Add(0437);
    sList.Add(0438);
    sList.Add(0439);
    sList.Add(0440);
    sList.Add(0451);
    sList.Add(0452);
    sList.Add(0453);
    sList.Add(0454);
    sList.Add(0455);
    sList.Add(0456);
    sList.Add(0457);
    sList.Add(0458);
    sList.Add(0459);
    sList.Add(0464);
    sList.Add(0467);
    sList.Add(0468);
    sList.Add(0469);
    sList.Add(0470);
    sList.Add(0471);
    sList.Add(0472);
    sList.Add(0473);
    sList.Add(0474);
    sList.Add(0475);
    sList.Add(0476);
    sList.Add(0477);
    sList.Add(0478);
    sList.Add(0479);
    sList.Add(0482);
    sList.Add(0483);
    sList.Add(0510);
    sList.Add(0511);
    sList.Add(0512);
    sList.Add(0513);
    sList.Add(0514);
    sList.Add(0515);
    sList.Add(0516);
    sList.Add(0517);
    sList.Add(0518);
    sList.Add(0519);
    sList.Add(0520);
    sList.Add(0523);
    sList.Add(0527);
    sList.Add(0530);
    sList.Add(0531);
    sList.Add(0532);
    sList.Add(0533);
    sList.Add(0534);
    sList.Add(0535);
    sList.Add(0536);
    sList.Add(0537);
    sList.Add(0538);
    sList.Add(0539);
    sList.Add(0543);
    sList.Add(0546);
    sList.Add(0550);
    sList.Add(0551);
    sList.Add(0552);
    sList.Add(0553);
    sList.Add(0554);
    sList.Add(0555);
    sList.Add(0556);
    sList.Add(0557);
    sList.Add(0558);
    sList.Add(0559);
    sList.Add(0561);
    sList.Add(0562);
    sList.Add(0563);
    sList.Add(0564);
    sList.Add(0565);
    sList.Add(0566);
    sList.Add(0570);
    sList.Add(0571);
    sList.Add(0572);
    sList.Add(0573);
    sList.Add(0574);
    sList.Add(0575);
    sList.Add(0576);
    sList.Add(0577);
    sList.Add(0578);
    sList.Add(0579);
    sList.Add(0580);
    sList.Add(0591);
    sList.Add(0592);
    sList.Add(0593);
    sList.Add(0594);
    sList.Add(0595);
    sList.Add(0596);
    sList.Add(0597);
    sList.Add(0598);
    sList.Add(0599);
    sList.Add(0631);
    sList.Add(0632);
    sList.Add(0633);
    sList.Add(0634);
    sList.Add(0635);
    sList.Add(0660);
    sList.Add(0662);
    sList.Add(0663);
    sList.Add(0668);
    sList.Add(0691);
    sList.Add(0692);
    sList.Add(0701);
    sList.Add(0710);
    sList.Add(0711);
    sList.Add(0712);
    sList.Add(0713);
    sList.Add(0714);
    sList.Add(0715);
    sList.Add(0716);
    sList.Add(0717);
    sList.Add(0718);
    sList.Add(0719);
    sList.Add(0722);
    sList.Add(0724);
    sList.Add(0728);
    sList.Add(0730);
    sList.Add(0731);
    sList.Add(0732);
    sList.Add(0733);
    sList.Add(0734);
    sList.Add(0735);
    sList.Add(0736);
    sList.Add(0737);
    sList.Add(0738);
    sList.Add(0739);
    sList.Add(0743);
    sList.Add(0744);
    sList.Add(0745);
    sList.Add(0746);
    sList.Add(0750);
    sList.Add(0751);
    sList.Add(0752);
    sList.Add(0753);
    sList.Add(0754);
    sList.Add(0755);
    sList.Add(0756);
    sList.Add(0757);
    sList.Add(0758);
    sList.Add(0759);
    sList.Add(0760);
    sList.Add(0762);
    sList.Add(0763);
    sList.Add(0766);
    sList.Add(0768);
    sList.Add(0769);
    sList.Add(0770);
    sList.Add(0771);
    sList.Add(0772);
    sList.Add(0773);
    sList.Add(0774);
    sList.Add(0775);
    sList.Add(0776);
    sList.Add(0777);
    sList.Add(0778);
    sList.Add(0779);
    sList.Add(0790);
    sList.Add(0791);
    sList.Add(0792);
    sList.Add(0793);
    sList.Add(0794);
    sList.Add(0795);
    sList.Add(0796);
    sList.Add(0797);
    sList.Add(0798);
    sList.Add(0799);
    sList.Add(08018);
    sList.Add(08059);
    sList.Add(0812);
    sList.Add(0813);
    sList.Add(0816);
    sList.Add(0817);
    sList.Add(0818);
    sList.Add(0825);
    sList.Add(0826);
    sList.Add(0827);
    sList.Add(0830);
    sList.Add(0831);
    sList.Add(0832);
    sList.Add(0833);
    sList.Add(0834);
    sList.Add(0835);
    sList.Add(0836);
    sList.Add(0837);
    sList.Add(0838);
    sList.Add(0839);
    sList.Add(0851);
    sList.Add(0852);
    sList.Add(0853);
    sList.Add(0854);
    sList.Add(0855);
    sList.Add(0856);
    sList.Add(0857);
    sList.Add(0858);
    sList.Add(0859);
    sList.Add(0870);
    sList.Add(0871);
    sList.Add(0872);
    sList.Add(0873);
    sList.Add(0874);
    sList.Add(0875);
    sList.Add(0876);
    sList.Add(0877);
    sList.Add(0878);
    sList.Add(0879);
    sList.Add(0883);
    sList.Add(0886);
    sList.Add(0887);
    sList.Add(0888);
    sList.Add(0890);
    sList.Add(0891);
    sList.Add(0892);
    sList.Add(0893);
    sList.Add(0894);
    sList.Add(0895);
    sList.Add(0896);
    sList.Add(0897);
    sList.Add(0898);
    sList.Add(0899);
    sList.Add(0901);
    sList.Add(0902);
    sList.Add(0903);
    sList.Add(0906);
    sList.Add(0908);
    sList.Add(0909);
    sList.Add(0911);
    sList.Add(0912);
    sList.Add(0913);
    sList.Add(0914);
    sList.Add(0915);
    sList.Add(0916);
    sList.Add(0917);
    sList.Add(0919);
    sList.Add(0930);
    sList.Add(0931);
    sList.Add(0932);
    sList.Add(0933);
    sList.Add(0934);
    sList.Add(0935);
    sList.Add(0936);
    sList.Add(0937);
    sList.Add(0938);
    sList.Add(0939);
    sList.Add(0941);
    sList.Add(0943);
    sList.Add(0951);
    sList.Add(0952);
    sList.Add(0953);
    sList.Add(0954);
    sList.Add(0955);
    sList.Add(0970);
    sList.Add(0971);
    sList.Add(0972);
    sList.Add(0973);
    sList.Add(0974);
    sList.Add(0975);
    sList.Add(0976);
    sList.Add(0977);
    sList.Add(0979);
    sList.Add(0990);
    sList.Add(0991);
    sList.Add(0992);
    sList.Add(0993);
    sList.Add(0994);
    sList.Add(0995);
    sList.Add(0996);
    sList.Add(0997);
    sList.Add(0998);
    sList.Add(0999);
    sList.Add(00852);
    sList.Add(00853);
    sList.Add(00886);
    if sList.IndexOf(sBegin)=-1 then Exit;
    Result := True;
  finally
    FreeAndNil(sList);
  end;
end;
--------------------- 
作者:qq_39951605 
来源:CSDN 
原文:https://blog.csdn.net/qq_39951605/article/details/82657625 
版权声明:本文为博主原创文章,转载请附上博文链接!

 

以上是关于delphi 手机号/Email/传真号验证有效性的主要内容,如果未能解决你的问题,请参考以下文章

请教在一个页面上有必填项也有非必填项,测试传真和手机号码,文本框分成区号

Delphi 求高手帮忙写自动更新程序

delphi 如何实现进程隐藏或防杀?(完整且上机切实有效!!)

Hibernate 验证器:@Email 接受 ask@*** 是不是有效?

请教关于delphi中dbnavigator控件的用法!

js正则表达式 验证手机号,email地址和邮政编码