0

TextBox を使用してユーザーの名前を入力しています。ここでは、大文字で始まり単純な文字で続くアルファベットのみを含むボックスを検証したいと思います。そのために、検証中であっても次のコードを使用しますが、いくつかのアルファベットの後に数字を入力すると、それを識別できません。誰かが問題を見つけるのを手伝ってください。

if (!Regex.IsMatch(textBox3.Text, @"[a-zA-Z]"))
{
    errorProvider2.SetError(textBox3, "Only use alphabates");
}
4

5 に答える 5

3

これを試して:

if (!Regex.IsMatch(textBox3.Text, @"[A-Z][a-zA-Z\s\'-]*")) 
    { 
        errorProvider2.SetError(textBox3, "Only use alphabates"); 
    } 
于 2012-10-08T06:40:47.480 に答える
2

このパターンを使用

^[AZ]?[az]*$

于 2012-10-08T06:40:39.233 に答える
0

これを試して:

string input = textBox3.Text;
Regex.IsMatch(input, @"^[a-zA-Z]+$");
于 2012-10-08T06:35:22.100 に答える
0

この正規表現を試してみてください。役立つかもしれません。

if (!Regex.IsMatch(textBox3.Text, @"^[A-Z][A-Za-z]*$"))
{
    errorProvider2.SetError(textBox3, "Only use alphabets");
}

大文字で始まり、大文字と小文字を問わず 0 個以上の文字が続きます。

于 2012-10-08T06:35:56.533 に答える
0

これは機能します。すべての条件を満たします:

@"^[A-Z]{1}[a-z]+$"

[A-Z]{1}- 最初の文字を大文字に 1 回だけ一致させます。
[a-z]+ - 小文字のみに 1 回以上
$一致します - 文字列の末尾をマークするため、数字はそれ以上一致しません

于 2012-10-08T06:51:34.407 に答える