加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP中判断输入的Email是不是正确

发布时间:2023-05-20 09:36:34 所属栏目:Asp教程 来源:
导读:我们在编写一些用户注册程序时,经常需要验证用户输入的Email是否正确,本文就给出一个源代码。

判断的基本原理是:

一个Email地址分为两部分,这两部分以@分开,@前面是用户的邮件用户名,@后面是Email的域名
我们在编写一些用户注册程序时,经常需要验证用户输入的Email是否正确,本文就给出一个源代码。

判断的基本原理是:

一个Email地址分为两部分,这两部分以@分开,@前面是用户的邮件用户名,@后面是Email的域名。因此,判断函数一开始就将输入就的email以@分为两部分,如果以@分完后,多于或少于两部分都为不正确的邮件。然后,判断函数判断输入的两部分内容是否为英文字母、数字、点(.)、减号(-)和下划线(_),如果包含其它字符,就是非法地址。然后判断域名是否包含“.”,以及“.”后面的字符是否为2位或3位,等等。

'判断EMAIL是否正确
Function IsValidEmail(email)
    Dim names, Name, i, c
    IsValidEmail = true
    names = Split(email, "@")
    If UBound(names) <> 1 Then
       IsValidEmail = false
       Exit Function
    End If
    For Each Name in names
       If Len(Name) <= 0 Then
           IsValidEmail = false
           Exit Function
       End If
       For i = 1 To Len(Name)
           c = LCase(Mid(Name, i, 1))
           If InStr("abcdefghijklmnopqrstuvwxyz_-.", c) <= 0 And Not IsNumeric(c) Then
                IsValidEmail = false
                Exit Function
           End If
       Next
       If Left(Name, 1) = "." Or Right(Name, 1) = "." Then
           IsValidEmail = false
           Exit Function
       End If
   Next
   If InStr(names(1), ".") <= 0 Then
       IsValidEmail = false
       Exit Function
   End If
   i = Len(names(1)) - InStrRev(names(1), ".")
   If i <> 2 And i <> 3 Then
      IsValidEmail = false
      Exit Function
   End If
   If InStr(email, "..") > 0 Then
      IsValidEmail = false
   End If
End Function

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章