如何为10位移动电话号码编写RegularExpressionValidator?

时间:2016-02-07 06:10:41

标签: c# asp.net asp.net-validators

我是一名新的ASP.NET Webforms开发人员,我现在正在努力验证要求提供手机号码的TextBox控件。输入电话号码时只使用一种格式

  

05 #### ####

我想对这个TextBox使用ASP.NET RegularExpressionValidator控件,我需要一个与前面的表达式匹配的正则表达式。正则表达式应根据以下规则验证输入的数字:

  1. 上述格式
  2. 号码必须以05
  3. 开头
  4. 该号码必须为10位数
  5. 那么如何为这个ASP.NET RegularExpressionValidator控件编写正则表达式(或ValidationExpression)属性?

    以下是我工作的片段:

    <asp:TextBox ID="txtPhoneNew" runat="server" CssClass="form-control" placeholder="966 ## ### ####"></asp:TextBox>
        <asp:RegularExpressionValidator ID="revPhoneNew" runat="server"
                                                ControlToValidate="txtPhoneNew" ErrorMessage="Enter a valid mobile phone number"
                                                ValidationExpression="[0-9]{10}"></asp:RegularExpressionValidator>
    

2 个答案:

答案 0 :(得分:0)

正如蒂姆所说的那样,根据你的例子,你需要的正则表达式是

<asp:TextBox ID="txtPhoneNew" runat="server" CssClass="form-control" placeholder="966 ## ### ####"></asp:TextBox>
<asp:RegularExpressionValidator ID="revPhoneNew" runat="server"
                                        ControlToValidate="txtPhoneNew" ErrorMessage="Enter a valid mobile phone number"
                                        ValidationExpression="^05\d{3}\s\d{4}$"></asp:RegularExpressionValidator>

答案 1 :(得分:0)

试试这个

      <asp:TextBox ID="txtPhoneNew"  MaxLength="10" runat="server" CssClass="form-control" ></asp:TextBox>

   <asp:RegularExpressionValidator ID="RegularExpressionValidator1"  
  runat="server" ControlToValidate="txtPhoneNew"
  ErrorMessage="enter valid phone" ValidationExpression="^05[0-9]{8}$"></asp:RegularExpressionValidator>