1

この正規表現を asp:RequiredFieldValidator と組み合わせて使用​​して、ユーザーに最低 7 文字の入力を強制します。

[0-9a-zA-Z]{7,}

しかし、ユーザーが文字以外の@、.、-などを入力すると、これは機能しません。すべての文字と最小 7 文字を入力できるようにする方法

4

4 に答える 4

5

正規表現は数字と文字のみを受け入れます。「。」改行文字を除く任意の 1 文字に一致します。

したがって、新しい正規表現は ".{7,}" または "\S{7,}" になります。

\S は、空白以外の文字に一致します (したがって、スペース、改行、集計などはありません...)

于 2012-04-06T13:46:42.183 に答える
4

Regex次の表現を試してください。

^.{7,}$
于 2012-04-06T13:45:38.270 に答える
2

最小 7 文字エントリの正しい表現は .{7,} 「.」です。任意の文字 (空白を含む) を表します。空白の問題を解決するには、\S{7,}(CAPITAL S!)を使用できます。

正規表現を使いこなすのに役立つ素敵なツールが必要な場合は、Regex Designerをお勧めします。 これはフリーウェアで、非常に使いやすいです ;-)

于 2012-04-06T13:57:02.480 に答える
1

正規表現はすべてを解決することを意図したものではありません。

CustomValidatorを使用できます。

  <asp:CustomValidator id="CustomValidator1"
       ControlToValidate="Text1"
       Display="Static"
       ErrorMessage="Must be at least 7 chars!"
       OnServerValidate="ServerValidation"
       runat="server"/>

ServerValidateイベントを処理して長さを確認できます。

void ServerValidation(object source, ServerValidateEventArgs args)
{
    args.IsValid = args.Value.Length >= 7;
}
于 2012-04-06T13:44:45.133 に答える