次の方法で共有


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 コントロールを使用して、テキスト ボックスに入力された値が、指定したパターンと一致するかどうかを検証する方法を次の例に示します。 この例では、パターンは 5 桁の郵便番号です。 検証後に、その結果がページに表示されます。

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

参照

Reference

RegularExpressionValidator

その他の技術情報

検証サーバー コントロール構文

.NET Framework の正規表現