1

私はこのような方法を持っています:

public static bool IsValidNumberLetter { get; set; } 

 public static void IsNumLettersInput(string checkNumberLetter)
 {
  Validated.IsValidNumberLetter = checkNumberLetter.Any(Char.IsLetter) &
  checkNumberLetter.Any(Char.IsDigit) & (checkNumberLetter.Trim().Length == 12));
 }

ユーザーが入力できる文字数を指定したい場合を除いて、これはうまく機能します: 例: 1234QAZWSX。この例では、X 個の文字と X 個の数字が必要ですが、順序は関係ありません。

正規表現を使用したくありません。

注: Validated は、変数IsValidNumberLetterを呼び出しているクラスの名前です。このようにして、プログラム全体で変数を使用して、Number Letter を検証する必要があります。

上記の方法で可能でしょうか?

ご意見ありがとうございます。

4

1 に答える 1

3
public static bool IsValid(string source)
{
    //this will not affect the original as strings are immutable
    source = source.Trim(); 
    if (source.Length != 12) return false;
    return source.Take(4).All(char.IsLetter)
         && source.Skip(4).All(char.IsDigit);
}
于 2013-06-15T06:46:23.780 に答える