نقل قول نوشته شده توسط eb_1345 مشاهده تاپیک

regx.Pattern = "((13|14)([0-9]{2})/?(((0[1-6])/?((0[1-9])|([12][0-9])|(3[0-1])))|(((0[7-9])|(1[0-1]))/?((0[1-9])|([12][0-9])|(30)))|((12)/?((0[1-9])|([12][0-9])|(29)))))"
چند نمونه رو تست کردم و بنظر درست میومد،
و این که / رو optional کردین هم بسیار خوب بود.
واقعا دست مریزاد.

اما:
/ اگر optional هست کلا باید اینجوری باشه،
این پترن در وضعیت فعلی هر کدوم رو به تنهایی درنظر میگیره:
یعنی 1383/1122 , 138311/22 هم valid هستن.

مورد بعدی این که الان کلا یک captured group داریم که کل تاریخ رو برمیگردونه،
و این خودش درونش 24 تا captured group دیگه داره.
در حالی که باید کلا 3 تا باشه : بخش سال و بخش ماه و بخش روز.