入力の長さRegularExpressionValidator
を検証するために a を使用しようとしています。TextBox
動作していますが、文字と数字しか受け付けません。任意の文字を許可したいのですが、唯一のチェックは 25 文字以下であることです。
<asp:TextBox ID="MenuLabel" runat="server" />
<asp:RegularExpressionValidator ValidationExpression="^[a-zA-Z0-9]{25}$" ID="MenuLabelVal" runat="server" ErrorMessage="Menu Label must be no longer than 25 characters." ControlToValidate="MenuLabel" />
正規表現は私の得意分野ではないので、英数字だけでなく任意の文字^[a-zA-Z0-9]{25}$
を最大 25 回表すように変更する方法を教えてください。
注 1:RequiredFieldValidator
1 つ以上の文字を確保するための場所が既にあります。
注 2: TextBoxのプロパティを使用できることはわかってMaxLength
いますが、このフォームは既存のデータを編集するためのものでもあり、編集時に既存のレコードを単純に切り捨てることは望ましくありません。ユーザーが気付かないうちにフォームが切り捨てられるのではなく、既存のデータを編集するユーザーが値を短くする必要があることを明らかにするバリデーターを実装することをお勧めします。
注 3:クライアント側の検証のみに依存する限り、カスタム バリデータなどの代替ソリューションを受け入れます。サーバーでカスタム検証ハンドラーを作成するためのコード ビハインドにアクセスできません。