2012-01-12 8 views
8

私は、Mvc Webアプリケーションの連絡先番号検証のための数字のみの検証のために次のコードを試しました。Mvc検証正規表現は数字のみですか?

[RegularExpression(@"/(^\(\d{10})?)$/", ErrorMessage = "Please enter proper contact details.")] 
[Required] 
[Display(Name = "Contact No")] 
public string ContactNo { get; set; } 

しかし、検証式は機能しません。

連絡先については、数字のみを受け取りたいです。 10桁の携帯電話番号または地上回線番号のいずれかになります。

+1

何が問題なのですか? – KMan

+3

連絡先番号はどのような形式ですか?スペースやダッシュを含めることはできますか? – WDuffy

+1

「適切に」定義すると、それについて不適切なのは何ですか? –

答えて

7

/ /は、正規表現のリテラルオブジェクトを作成するjavascriptの方法です。 .NETではそれを使用しないでください。

@"^\((\d{10}?)\)$" 

か、正確に10桁の数字をしたい場合:数字のみ以外の任意の制限を持っていない場合

@"^(\d{10})$" 
14

は、これが収まる必要があります。

[RegularExpression(@"^\d+$", ErrorMessage = "Please enter proper contact details.")] 
[Required] 
[Display(Name = "Contact No")] 
public string ContactNo { get; set; } 

は、次の試してみてください

+0

したがって、基本的に正規表現を使用して、文字列がすべて数字かどうかを判断します。 – Zapnologica

+0

@Zapnologica確かに。 – gdoron

+0

ありがとうございました。あなたの答えは本当に助かります。 –

0

これは私のために働いた:

[RegularExpression(@"^[0-9]{10}", ErrorMessage = "Please enter proper contact details.")]