一个简单的E_mail地址判断函数(通用)

简介:      —————————————————'    |  Author:I94Self                  |'    |  E_mail:I94Self@hotmail.

     —————————————————
'    |  Author:I94Self                  |
'    |  E_mail:I94Self@hotmail.com      |
'    |  HTTP://www.I94Self.com          |
'    |  Please save author information  |
'     —————————————————

''''''''''''''''''''''''''''''''
'    判断E_mail输入是否正确    '
''''''''''''''''''''''''''''''''
Function IsValidE_mail(E_mail)
'判断E_mail地址中是否有@符号,如果没有@符号或者@符号在E_mail字符第一个或最后一个,则函数都返回False,并退出函数。
E_mailArray=Split(E_mail, "@")
If UBound(E_mailArray)<>1 Then
IsValidE_mail=False
Exit Function
End If
'判断E_mail地址中是否有连在一起的..符号(包括了...或无数个.连接的符号),如果有,则函数都返回False,并退出函数。
If InStr(E_mail,"..")>0 Then
IsValidE_mail=False
Exit Function
End If
'判断E_mail地址中@后的字符串是否有.字符,如果没有.符号或者.符号在E_mail字符第一个,则函数都返回False,并退出函数。
If InStr(E_mailArray(1), ".") <= 0 Then
IsValidE_mail = False
Exit Function
End If
'判断E_mail地址中.后的字符串是否等于2字符或3字符,如果不等于,则函数都返回False,并退出函数。
Number=Len(E_mailArray(1))-InStrRev(E_mailArray(1),".")
If Number<>2 And Number<>3 Then
IsValidE_mail=False
Exit Function
End If
For Each E_mailArrayContent In E_mailArray
'判断E_mail地址中@前是否有字符,如果没有,则函数都返回False,并退出函数。
    If Len(E_mailArrayContent)<=0 Then
    IsValidE_mail=False
    Exit Function
    End If
'判断E_mail地址中是否含有除abcdefghijklmnopqrstuvwxyz_-和数字以外的非法字符,如果含有,则函数返回False,并退出函数。
    For Number=1 To Len(E_mailArrayContent)
    E_mailStr=Lcase(Mid(E_mailArrayContent,Number,1))
    If InStr("abcdefghijklmnopqrstuvwxyz_-.",E_mailStr)<=0 And Not IsNumeric(E_mailStr) Then
    IsValidE_mail=False
    Exit Function
    End If
    Next
'判断E_mail地址中@前后的字符串中是否第一个和是最后一个字符是.字符,如果是,则函数都返回False,并退出函数。
    If Left(E_mailArrayContent,1)="." Or Right(E_mailArrayContent,1)="." Then
    IsValidE_mail=False
    Exit Function
    End If
Next
'没有发现E_mail地址中有异常字符,函数返回True,函数结束。
IsValidE_mail=True
End Function

 

目录
相关文章
|
开发工具 git Perl
Argo CD 入门扫盲使用(二)
Argo CD 入门扫盲使用
406 0
|
6月前
|
存储 SQL 人工智能
DeepSeek开源周第五弹之二!Smallpond:构建于3FS之上的轻量级数据处理框架,高效处理PB级数据
Smallpond 是 DeepSeek 开源的轻量级数据处理框架,基于 DuckDB 和 3FS 构建,支持 PB 级数据处理,提供高性能的数据加载、查询和转换功能,适合大规模数据预处理和实时分析。
375 1
DeepSeek开源周第五弹之二!Smallpond:构建于3FS之上的轻量级数据处理框架,高效处理PB级数据
|
9月前
|
调度 云计算 芯片
云超算技术跃进,阿里云牵头制定我国首个云超算国家标准
近日,由阿里云联合中国电子技术标准化研究院主导制定的首个云超算国家标准已完成报批,不久后将正式批准发布。标准规定了云超算服务涉及的云计算基础资源、资源管理、运行和调度等方面的技术要求,为云超算服务产品的设计、实现、应用和选型提供指导,为云超算在HPC应用和用户的大范围采用奠定了基础。
179928 22
|
11月前
|
移动开发 编解码 数据可视化
低代码可视化-uniapp SliderRange区间组件-代码生成器
SliderRange区间组件是一种用户界面元素,允许用户通过拖动滑块选择数值范围。组件支持微信小程序、H5和App,具有高度可定制性、响应式设计和多种事件处理功能。适用于价格筛选、音量调节等场景。代码实现包括滑动区域、滑块、事件处理等部分,支持可视化配置步长、颜色等属性。使用时需注意选择合适步长、提供清晰标签和考虑无障碍设计。
311 0
|
关系型数据库 MySQL 大数据
教你使用Python玩转MySQL数据库,大数据导入不再是难题!
教你使用Python玩转MySQL数据库,大数据导入不再是难题!
266 1
|
SQL 关系型数据库 MySQL
如何在 MySQL 或 MariaDB 中导入和导出数据库
如何在 MySQL 或 MariaDB 中导入和导出数据库
1023 0
|
jenkins Java 持续交付
Docker Swarm总结+Jenkins安装配置与集成snarqube和目标服务器(4/5)
Docker Swarm总结+Jenkins安装配置与集成snarqube和目标服务器(4/5)
187 0
|
算法 Python
Python编程实验四:函数的使用
Python编程实验四:函数的使用
204 0
|
消息中间件 NoSQL 安全
Redis突然报错 NOAUTH Authentication required
2016年年底有个项目需要用到redis,当时比较忙没有在新机器安装redis,就把我博客那台服务器上的redis地址给了技术的同事。第二天开发的同事告诉我redis连不上了,提示NOAUTH Authentication required,看了redis配置文件并没有设置密码,而且前一天使用的时候正常,我这台服务器也不会有人动。当时并没有深入分析,重启了redis后可以正常使用了。
1111 0
Redis突然报错 NOAUTH Authentication required
【算法系列篇】递归、搜索与回溯(一)
【算法系列篇】递归、搜索与回溯(一)