(一). 概述及功能
用了两种方法实现验证Email格式,Asp.net验证控件和手动编写代码验证.
并用到简单工厂和适配品设计模式, 代码重构技术.
实现自定义Email邮件地址有效性验证, 完成如下功能:
Question 1
1
.
Email
格式为
user@server.domain.
例如
:
King.Cheng@hotmail.com or King.Cheng@hotmail.com.cn or King.Cheng@hotmail.com.cn.c.d
2
.
Email
地址只能有一个
@
符号。
3
. 用户名部分
a)
用户名不可为空
b)
只能以数字或字母开始
c)
可以包含“
.
” “
-
” “
_
” “
~
” 符号, 其他符号非法
d)
不能够以特殊符号为开始
4
. 域名部分
a)
域名只能为数字或者字母, 不能使用特殊符号
b)
域名或服务器不可为空
5
.通过
DNS
能够访问到该邮件服务器,而不是
WWW
服务器。
例如,
hotmail
.com
的邮件服务器可以访问, 但是
hotmail
.com
的
HTTP
服务
器却不一定是邮件服务器。
Question 2
使用正则表达式重构
Question1
, 上面的
5
不用实现
.
(二). 答案
下载代码并打开解决方案:
ValidateEmail.sln
Question 1:
工程
: ValidateEmail 为此问题答案
Question 2:
工程
: ValidateEmail_Refactor 为此问题答案[重构后的工程]
重构后的类结构如下:
(三). 示例代码下载
http://www.cnblogs.com/Files/ChengKing/ManuValidateEmail.rar