波斯日历正则表达式日期格式

时间:2014-04-21 06:08:41

标签: c# regex

我在link中找到了波斯日历的正则表达式,但它是yyyy/MM/dd格式。格式化为dd/MM/yyyyMM/dd/yyyy的任何建议?

3 个答案:

答案 0 :(得分:4)

(?:1[234]\d{2})(\/|\-)(?:0?[1-9]|1[0-2])(\/|\-)(?:0?[1-9]|[12][0-9]|3[01])$

Debuggex Demo

支持年份在1200到1499之间

答案 1 :(得分:2)

我正在使用此代码并且效果很好:

首先定义一个常量,如下面的代码:

public const string PersianDateRegex = @"(?:1[23]\d{2})\/(?:0?[1-9]|1[0-2])\/(?:0?[1-9]|[12][0-9]|3[01])$";

因此,为了测试它,您可以使用以下代码:

if (Regex.IsMatch(farsiDate, PersianDateRegex))
         {
            ...
         }

答案 2 :(得分:-1)

在ASP.NET MVC中尝试此操作以验证波斯日期:

[RegularExpression(@"^$|^([1۱][۰-۹ 0-9]{3}[/\/]([0 ۰][۱-۶ 1-6])[/\/]([0 ۰][۱-۹ 1-9]|[۱۲12][۰-۹ 0-9]|[3۳][01۰۱])|[1۱][۰-۹ 0-9]{3}[/\/]([۰0][۷-۹ 7-9]|[1۱][۰۱۲012])[/\/]([۰0][1-9 ۱-۹]|[12۱۲][0-9 ۰-۹]|(30|۳۰)))$", ErrorMessage = "Not Valid")]

有关验证波斯日期的详细信息,请访问this link