当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > C# 邮件地址是否合法的验证

ASP.NET
C#中使Datawindow.Net组件处理数据
在.net开发中几个重要的认识误区(1)
WML教程11:文本框控件(Input)
WML教程6:动作和链接
在WEB自定义控件中实现事件及自动保存值
WML教程14:WML 文本处理
表单启动太慢时显示一个等待图标(类似Windows下的时间沙漏)
ADO.NET学习笔记(二)
使用HttpContext中的User属性来实现用户身份验证之用户验证票篇
由DataGrid翻页所导致的诸多问题的解决方案
动态加载类的原理:元数据的使用
用C#实现Des加密和解密
快速对图片进行滤光处理
可以代替窗体Refresh方法的函数
『原创』适合初学的简单3D碰撞检测初探(对于3D编程初学人员)
《Essential .Net》读书笔记 - Chapter 3
Lion.Web.WebHtmlEditor 1.0 Hack 攻略
数据库事务处理的另外一种方法
[WSE]Web Service—后台侦听服务通过WSE2.0建立订阅/发布关系
给windows服务添加描述

ASP.NET 中的 C# 邮件地址是否合法的验证


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 165 ::
收藏到网摘: n/a

检测输入的邮件地址strEmail是否合法,非法则返回true。 /// <summary>
/// 检测输入的邮件地址strEmail是否合法,非法则返回true。
/// </summary>
public bool CheckEmail(string strEmail)
{
int i, j;
string strTmp, strResult;
string strWords = "abcdefghijklmnopqrstuvwxyz_-.0123456789"; //定义合法字符范围
bool blResult = false;
strTmp = strEmail.Trim();
//检测输入字符串是否为空,不为空时才执行代码。
if (!(strTmp == "" || strTmp.Length == 0))
{
//判断邮件地址中是否存在“@”号
if ((strTmp.IndexOf("@") < 0))
{
blResult = true;
return blResult;
}
//以“@”号为分割符,把地址切分成两部分,分别进行验证。
string[] strChars = strTmp.Split(new char[] { '@' });
foreach (string strChar in strChars)
{
i = strChar.Length;
//“@”号前部分或后部分为空时。
if (i == 0)
{
blResult = true;
return blResult;
}
//逐个字进行验证,如果超出所定义的字符范围strWords,则表示地址非法。
for (j = 0; j < i; j++)
{
strResult = strChar.Substring(j, 1).ToLower();//逐个字符取出比较
if (strWords.IndexOf(strResult) < 0)
{
blResult = true;
return blResult;
}
}
}
}
return blResult;
}