質問する
202137 次
6 に答える
98
どうですか:
//true if it doesn't contain letters
bool result = hello.Any(x => !char.IsLetter(x));
于 2012-10-14T17:28:29.107 に答える
76
あなたをこれに置き換えてくださいfor loop
:
errorCounter = Regex.Matches(yourstring,@"[a-zA-Z]").Count;
Regex
クラスを使用することを忘れないusing System.Text.RegularExpressions;
でください。インポートで使用する必要があります
于 2012-10-14T17:31:00.743 に答える
24
正規表現を使用できます:
Regex.IsMatch(hello, @"^[a-zA-Z]+$");
それが気に入らない場合は、LINQ を使用できます。
hello.All(Char.IsLetter);
または、文字をループして isAlpha を使用することもできます。
Char.IsLetter(character);
于 2012-10-14T17:23:01.277 に答える
7
正規表現を探すことができます
Regex.IsMatch(str, @"^[a-zA-Z]+$");
于 2012-10-14T17:22:31.793 に答える
4
最小限の変更の場合:
for(int i=0; i<str.Length; i++ )
if(str[i] >= 'a' && str[i] <= 'z' || str[i] >= 'A' && str[i] <= 'Z')
errorCount++;
少なくとも速度が問題ではなく、実際の正確な数が本当に必要ない場合は、正規表現を使用できます。
于 2012-10-14T17:24:13.770 に答える
3
char 配列に変換する必要のない正規表現を使用する
if(Regex.IsMatch("yourString",".*?[a-zA-Z].*?"))
{
errorCounter++;
}
于 2012-10-14T17:23:30.220 に答える