ASP.NET中Validation验证控件正则表达式特殊符号的说明

 更新时间:2016年04月18日 11:10:25   作者:天轰穿  
本文介绍asp.net中RegularExpressionValidator控件中的几种特殊字符串使用规则,并做了代码演示,希望对大家有所帮助。

RegularExpressionValidator控件表达式说明:

方括号“[ ]”用与定义可接受的字符。[abc123] 表示控件只能接受 a,b,c,1,2,3 这6个字符;

反集合符号 “ ^ ”用于定义不可以接受的字符。[^a-h] 表示控件除了 a 到 h 8个字符外,都可以接受;

花括号“{ }”定义必须输入的字符个数。{6}表示只能输入6个字符 ; {6,}表示必须输入6个以上,无上限 ; {2,6} 表示必须输入2至6个字符;但是花括号必须放在方括号后面,例如 [a-z]{4} 表示必须输入 4位a和z之间的任意字符。

小圆点 “ . ” 用于代表任意字符。 例如 .{3,6}表示接受3到6个任意字符。

竖线 “ | ” 用于表示 “或”的逻辑符号。例如 [1-9]{3,6}|[A-Za-z]{3} 表示可以接受 3到6个数字或者 3个字母。 (大小写都可以区别的哦)

小括号“ () ” 用于分块,与数字运算中的小括号作用类似。

斜线 “ \ ” 若希望可以接受的字符包含上述特殊字符。例如 \([0-9]{3}\),表示输入格式为“(xxx)”的电话区号。

代码演示:

复制代码 代码如下:

<%@ Page Language="VB" ContentType="text/html" ResponseEncoding="gb2312" %>
<head>
<title>validation验证控件</title>
</head>
<body>
<form runat="server">
  <p>输入姓名 :
  <asp:TextBox ID="nam" Text="姓名" TextMode="SingleLine" runat="server" /> <asp:RequiredFieldValidator ControlToValidate="nam" Display="Dynamic" ErrorMessage="必须输入姓名" ID="rnam" runat="server" /></p>
  <p>输入日期 :
    <asp:TextBox ID="dat" Text="日期" TextMode="SingleLine" runat="server" /> <asp:CompareValidator ControlToValidate="dat" Display="Dynamic" ErrorMessage="日期的正确格式是 yyyy-mm-dd" ID="rdat" Operator="DataTypeCheck" runat="server" Type="Date" />     </p>
  <p>输入数值(整数) :
  <asp:TextBox ID="type" Text="数值" TextMode="SingleLine" runat="server" />  <asp:CompareValidator ControlToValidate="type" Display="Dynamic" ErrorMessage="你输入的不是一个整数" ID="rtype" Operator="DataTypeCheck" runat="server" Type="Integer" />    </p>
  <p>输入数字(1-10) :
  <asp:TextBox ID="num" Text="数值" TextMode="SingleLine" runat="server" />    <asp:RangeValidator ControlToValidate="num" Display="Dynamic" ErrorMessage="只能是1-10之间的数" ID="rnum" Type="Integer" MaximumValue="10" MinimumValue="1" runat="server" />  </p>
  <p>请输入一个小于50的数 :
    <asp:TextBox ID="num5" Text="小于50的" TextMode="SingleLine" runat="server" />   
    <asp:CompareValidator ControlToValidate="num5" Display="Dynamic" ErrorMessage="你输入的数不小于50" ID="rnum5" Operator="LessThan" runat="server" Type="Integer" ValueToCompare="50" /></p>
  <p>随便输入一个email :
    <asp:TextBox ID="eml" Text="email" TextMode="SingleLine" runat="server" />   
    <asp:RegularExpressionValidator ControlToValidate="eml" Display="Dynamic" ErrorMessage="应该是3-6任意字符@2-9位任意字符.2-3位任意字符" ID="reml" runat="server" ValidationExpression=".{3,6}@.{2,9}\..{2,3}" />
  <asp:ValidationSummary DisplayMode="List" HeaderText="错误信息集合" ID="tt" runat="server" /></p>
  <p>
  <asp:Button ID="But" Text="提交" runat="server" />      </p>
  </p>
</form>
</body>
</html>

相关文章

最新评论