2010-11-29 6 views
1

RegularExpression属性を使用してプロパティの検証を実装して、ユーザーが入力した時刻が最も近い四半期(02:15、02:00)に丸められているかどうかを確認したい、02:45、02:30は一致するが、02:12は一致しない)。MVC検証、丸め時間の正規表現

次のものを試しましたが、動作しません。

[RegularExpression("([0-1][0-9]|[2][0-3]):(([0][0])|([1][5]|[3][0]|[4][5]))] 
public DateTime StartHour { get; set; } 

助けてもらえますか?

私の悪い英語をおかげで申し訳ありません。

+0

はあなたを忘れた文字列の末尾RegularExpression文字列を閉じますか? [([0] [0])|([1] [5] | [3] [0])[正規表現( "[0-1] [0-9] | [2] [0-3] – hunter

+0

あなたの英語に間違いはありません –

答えて

3

([01][0-9]|[2][0-3]):(00|15|30|45)が有効です。

+0

もちろん、 '2'のまわりに角括弧は必要ありません。 –

+0

はい、もちろんです。 –

0

^([01][0-9]|2[0-3]):(00|15|30|45)$ストリングの^は=開始([01][0-9]|2[0-3]) =(0-9続いて0または1)又は2が0~3 00のいずれか、15、30又は45 $続くリテラルコロン=

+0

私は試しましたが、値が一致するかどうかにかかわらず、どちらの場合でも検証エラーメッセージが表示されます(たとえば10:15と10 :10)また、[01]に0と1の間に " - "を追加しようとしましたが、それでも動作しません。 – Pandore