在C#中的時間間隔,我想寫一個正則表達式,將接受1900年和2099年正則表達式的年
我試圖^([1][9]\d\d|[2][0]\d\d)$
之間只有幾年,但不起作用。有任何想法嗎?
所以我有一個類:
[NotNullValidator(MessageTemplate = "Anul nu poate sa lipseasca!")]
// [RangeValidator(1900, RangeBoundaryType.Inclusive, 2100, RangeBoundaryType.Inclusive, MessageTemplate = "Anul trebuie sa contina 4 caractere!")]
[RegexValidator(@"(19|20)\d{2}$", MessageTemplate = "Anul trebuie sa fie valid!", Ruleset = "validare_an")]
public int anStart
{
get;
set;
}
而且在測試方法:
[TestMethod()]
public void anStartTest()
{
AnUnivBO target = new AnUnivBO() { anStart = 2009 };
ValidationResults vr = Validation.Validate<AnUnivBO>(target, "validare_an");
Assert.IsTrue(vr.IsValid);
}
爲什麼失敗?
你的模式是有效的,雖然它可以縮短。請張貼一些示例代碼,說明你如何使用它來說明爲什麼它不適合你。 – 2010-01-23 20:39:33