Compartir a través de


RegularExpressionValidator (Control, referencia general)

Evalúa el valor de un control de entrada para determinar si coincide con un modelo definido por una expresión regular.

<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"
/>

Comentarios

El control RegularExpressionValidator se utiliza para determinar si el valor de un control de entrada coincide con un patrón definido por una expresión regular. Este tipo de validación permite comprobar secuencias de caracteres previsibles, como las de los números de la seguridad social, las direcciones de correo electrónico, los números de teléfono y los códigos postales, entre otras.

NotaNota

Si el control de entrada está vacío, no se llama a ninguna función de validación y la validación se realiza correctamente.Utilice un control RequiredFieldValidator para evitar que el usuario omita un control de entrada.

Se efectúan tanto la validación del servidor como la del cliente, a no ser que el explorador no admita la validación del servidor o que la del cliente esté deshabilitada de manera explícita (la propiedad EnableClientScript está establecida en false).

La propiedad ValidationExpression se utiliza para especificar la expresión regular usada para validar un control de entrada. La sintaxis de la validación mediante expresiones regulares presenta algunas diferencias en el cliente y en el servidor. En el cliente, se utiliza la sintaxis de expresiones regulares de JScript. En el servidor, se utiliza la sintaxis Regex. Debido a que la sintaxis de la expresión regular JScript es un subconjunto de la sintaxis de Regex, se recomienda utilizar la sintaxis de la expresión regular JScript para obtener los mismos resultados en el cliente y en el servidor.

Para obtener información adicional sobre cómo crear y dar formato a expresiones regulares, vea Expresiones regulares de .NET Framework.

Para obtener información detallada sobre el control RegularExpressionValidator, vea la clase RegularExpressionValidator.

Ejemplo

En el ejemplo de código siguiente se muestra cómo utilizar el control RegularExpressionValidator para validar el valor introducido en un cuadro de texto para un modelo concreto. En este ejemplo, el modelo es un código postal de cinco dígitos. A continuación, se muestra el resultado de validación en la página.

<%@ 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>

Vea también

Referencia

RegularExpressionValidator

Conceptos

Expresiones regulares de .NET Framework

Otros recursos

Sintaxis de los controles de servidor Validation