在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);
}
为什么它会失败?