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>