Поделиться через


Элемент управления RegularExpressionValidator (общие справочные сведения)

Оценивает введенные в элементе управления данные, определяя, соответствуют ли они шаблону, указанному в регулярном выражении.

<asp:RegularExpressionValidator
    AccessKey="string"
    BackColor="color name|#dddddd"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    ControlToValidate="string"
    CssClass="string"
    Display="None|Static|Dynamic"
    EnableClientScript="True|False"
    Enabled="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    ErrorMessage="string"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
        Large|X-Large|XX-Large"
    Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    Height="size"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    SetFocusOnError="True|False"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    Text="string"
    ToolTip="string"
    ValidationExpression="string"
    ValidationGroup="string"
    Visible="True|False"
    Width="size"
/>

Заметки

Элемент управления RegularExpressionValidator используется, чтобы определить, соответствуют ли введенные в элементе управления данные шаблону, определенному регулярным выражением. Такая проверка позволяет проверять предсказуемые последовательности символов, такие как номера ИНН, адреса электронной почты, телефоны, почтовые индексы и т. п.

ПримечаниеПримечание

Если элемент управления ввода пуст, функции проверки не вызываются и проверка считается успешной.Элемент управления RequiredFieldValidator используется, чтобы пользователь не мог пропустить ввод данных в элемент управления ввода.

Выполняется проверка как на стороне сервера, так и на стороне клиента, если обозреватель поддерживает проверку клиента и если проверка клиента не была явно отключена (путем указания для свойства EnableClientScript значения false).

Свойство ValidationExpression используется для задания регулярного выражения, используемого для проверки элемента управления вводом. Синтаксис проверки регулярного выражения на стороне клиента немного отличается от синтаксиса проверки регулярного выражения на стороне сервера. На стороне клиента используется синтаксис регулярных выражений JScript. Для сервера используется синтаксис Regex. Поскольку синтаксис регулярных выражений языка JScript является подмножеством синтаксиса Regex, для получения одинаковых результатов для клиента и сервера рекомендуется использовать синтаксис регулярных выражений языка JScript.

Дополнительные сведения о создании и форматировании регулярных выражений см. в разделе Регулярные выражения в .NET Framework.

Подробные сведения об элементе управления RegularExpressionValidator см. в описании класса RegularExpressionValidator.

Пример

В следующем примере кода показано использование элемента управления RegularExpressionValidator для проверки значения, введенного в текстовое поле, на соответствие заданному шаблону. В этом примере шаблоном служит почтовый индекс, состоящий из пяти цифр. Результат проверки затем отображается на странице.

<%@ Page Language="VB" AutoEventWireup="True" %>

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>RegularExpressionValidator Sample</title>
<script runat="server">

       Sub ValidateBtn_Click(sender As Object, e As EventArgs) 

          If Page.IsValid Then 

             lblOutput.Text = "Page is Valid!"

          Else 

             lblOutput.Text = "Page is InValid!"

          End If

       End Sub

    </script>

 </head>
 <body>

    <h3>RegularExpressionValidator Sample</h3>
    <p/>

    <form id="Form1" runat="server">

       <table style="background-color:#eeeeee; padding:10">
          <tr valign="top">
             <td colspan="3">
                <asp:Label id="lblOutput" 
                     Text="Enter a 5-digit ZIP Code" 
                     Font-Names="Verdana" 
                     Font-Size="10pt" 
                     runat="server" 
                     AssociatedControlID="TextBox1"/>
             </td>
          </tr>

          <tr>
             <td colspan="3">
                <b>Personal Information</b>
             </td>
          </tr>
          <tr>
             <td align="right">
                Zip Code:
             </td>
             <td>
                <asp:TextBox id="TextBox1" 
                     runat="server"/>
             </td>
             <td>
                <asp:RegularExpressionValidator id="RegularExpressionValidator1" 
                     ControlToValidate="TextBox1"
                     ValidationExpression="\d{5}"
                     Display="Static"
                     EnableClientScript="false"
                     ErrorMessage="ZIP Code must be 5 numeric digits"
                     runat="server"/>
             </td>
          </tr>
          <tr>
             <td></td>
             <td>
                <asp:Button ID="Button1" text="Validate" 
                     OnClick="ValidateBtn_Click" 
                     runat="server"/>
             </td>
             <td></td>
          </tr>
       </table>

    </form>

 </body>
 </html>  
 <%@ Page Language="C#" AutoEventWireup="True" %>

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
 <head>
    <title>RegularExpressionValidator Sample</title>
<script runat="server">

       void ValidateBtn_Click(Object sender, EventArgs e) 
       {
          if (Page.IsValid) 
          {
             lblOutput.Text = "Page is Valid!";
          }
          else 
          {
             lblOutput.Text = "Page is InValid!";
          }
       }

    </script>

 </head>
 <body>

    <h3>RegularExpressionValidator Sample</h3>
    <p/>

    <form id="Form1" runat="server">

       <table style="background-color:#eeeeee; padding:10">
          <tr valign="top">
             <td colspan="3">
                <asp:Label id="lblOutput" 
                     Text="Enter a 5-digit ZIP Code" 
                     Font-Names="Verdana" 
                     Font-Size="10pt" 
                     runat="server"
                     AssociatedControlID="TextBox1"/>
             </td>
          </tr>

          <tr>
             <td colspan="3">
                <b>Personal Information</b>
             </td>
          </tr>
          <tr>
             <td align="right">
                Zip Code:
             </td>
             <td>
                <asp:TextBox id="TextBox1" 
                     runat="server"/>
             </td>
             <td>
                <asp:RegularExpressionValidator id="RegularExpressionValidator1" 
                     ControlToValidate="TextBox1"
                     ValidationExpression="\d{5}"
                     Display="Static"
                     EnableClientScript="false"
                     ErrorMessage="ZIP Code must be 5 numeric digits"
                     runat="server"/>
             </td>
          </tr>
          <tr>
             <td></td>
             <td>
                <asp:Button ID="Button1" text="Validate" 
                     OnClick="ValidateBtn_Click" 
                     runat="server"/>
             </td>
             <td></td>
          </tr>
       </table>

    </form>

 </body>
 </html>

См. также

Ссылки

RegularExpressionValidator

Основные понятия

Регулярные выражения в .NET Framework

Другие ресурсы

Синтаксис серверного элемента управления Validation