10桁の数値(特殊文字および小数なし)の正規表現とは何ですか。
この正規表現を使用して、10桁のみを照合します。
@"^\d{10}$"
文字列内の任意の場所で連続する10桁の数字を見つけるには、次を使用します。
@"\d{10}"
これにより、11桁の数字の最初の10桁も検索されることに注意してください。 exactly10桁以上の文字列の任意の場所を検索するには、負の lookarounds を使用できます。
@"(?<!\d)\d{10}(?!\d)"
次のパターンを使用します。
^\d{10}$
\d{10}
私はそれがそれをすべきだと信じています
実装方法の例:
public bool ValidateSocialSecNumber(string socialSecNumber)
{
//Accepts only 10 digits, no more no less. (Like Mike's answer)
Regex pattern = new Regex(@"(?<!\d)\d{10}(?!\d)");
if(pattern.isMatch(socialSecNumber))
{
//Do something
return true;
}
else
{
return false;
}
}
また、別の方法で行うこともできます。 Match
を使用してから、パターンマッチングの周りにtry-catchブロックをラップします。ただし、間違った入力が頻繁に行われる場合、例外をスローするのは非常にコストがかかります。したがって、少なくとも単純なケースでは、上記の方法を好みます。
これを使って:
\d{10}
役に立てば幸いです。