打印本文 打印本文 关闭窗口 关闭窗口
RegularExpressionValidator正则表达式验证电子邮件
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1587  更新时间:2006/7/27  文章录入:mintao  责任编辑:mintao

RegularExpressionValidator有两种主要的属性来进行有效性验证。ControlToValidate 包含了一个值进行验证。如取出文本框中的值。如ControlToValidate="TextBox1" ValidationExpression 包含了一个正则表达式进行验证。

好了,有了上面的叙述,我们就举个例子来说明正则表达式。比如,我们想要对用户输入的电子邮件进行校验,那么,什么样的数据才算是一个合法的电子邮件呢?我可以这样输入:test@yesky.com,当然我也会这样输入:xxx@yyy.com.cn,但是这样的输入就是非法的:xxx@@com.cn或者@xxx.com.cn,等等,所以我们得出一个合法的电子邮件地址至少应当满足以下几个条件:

1. 必须包含一个并且只有一个符号“@”

2. 第一个字符不得是“@”或者“.”

3. 不允许出现“@.”或者.@

4. 结尾不得是字符“@”或者“.”

所以根据以上的原则和上面表中的语法,我们很容易的就可以得到需要的模板如下:"= "^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$"

请看validata6.aspx的内容:

 

<!--源文件:form\web页面简介\validate6.aspx-->

</head>

<body>

<center><h3><font face="Verdana">使用正则表达式验证</font></h3></center>

<p>

<form runat="server">

<center>

<title>使用正则表达式验证</title>

    <table bgcolor="#eeeeee" cellpadding=10>

    <tr valign="top">

      <td colspan=3>

        <asp:Label ID="lblOutput" Text="输入E-mail地址" Font-Name="Verdana" Font-Size="10pt" runat="server"/>

      </td>

    </tr>

    <tr>

      <td align=right>

        <font face=Verdana size=2>E-mail:</font>

      </td>

      <td>

        <ASP:TextBox id=TextBox1 runat=server />

      </td>

      <td>

        <asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server"

            ControlToValidate="TextBox1"

            ValidationExpression="^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$"

            Display="Static"

            Font-Name="verdana"

            Font-Size="10pt">

               请输入有效的E-mail地址!

        </asp:RegularExpressionValidator>

[1] [2]  下一页

打印本文 打印本文 关闭窗口 关闭窗口