判斷字串是否是合法的EMail (轉)

worldblog發表於2007-12-14
判斷字串是否是合法的EMail (轉)[@more@]

Public Function IsVal(str As String) As Boolean
  Dim names, name, i, c
  IsValidEmail = True
 
  names = Split(strEmail, "@")

  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(strEmail, "..") > 0 Then
  IsValidEmail = False
  Exit Function
  End If

End Function


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-993331/,如需轉載,請註明出處,否則將追究法律責任。

相關文章