117.info
人生若只如初见

c#正则表达式怎样匹配日期格式

在C#中,你可以使用Regex类来匹配日期格式。为了匹配常见的日期格式(如MM/dd/yyyy、yyyy-MM-dd等),你可以使用以下正则表达式:

using System;
using System.Text.RegularExpressions;

class Program
{
    static void Main()
    {
        string dateFormat1 = "MM/dd/yyyy";
        string dateFormat2 = "yyyy-MM-dd";

        string input1 = "12/31/2021";
        string input2 = "2021-12-31";

        Regex regex1 = new Regex(@"^(?:(?:0[1-9]|1[0-2])/(?:0[1-9]|[12][0-9]|3[01])|(?:29|30)/(?:0[13-9]|1[0-2])|31/(?:0[13578]|1[02]))/\d{4}|29/02/(?:\d{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00))$");
        Regex regex2 = new Regex(@"^(?:\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12][0-9]|3[01])|(?:0[13-9]|1[0-2])-(?:29|30)-\d{4}|(?:0[13578]|1[02])-31-\d{4})$");

        bool match1 = regex1.IsMatch(input1);
        bool match2 = regex2.IsMatch(input2);

        Console.WriteLine($"Input: {input1}, Match (MM/dd/yyyy): {match1}");
        Console.WriteLine($"Input: {input2}, Match (yyyy-MM-dd): {match2}");
    }
}

这个示例中,我们定义了两个正则表达式,一个用于匹配MM/dd/yyyy格式,另一个用于匹配yyyy-MM-dd格式。然后,我们使用IsMatch方法检查输入字符串是否与相应的正则表达式匹配。

请注意,这些正则表达式可能无法涵盖所有可能的日期格式。你可以根据需要调整它们以适应你的特定情况。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fec66AzsNAgFUAA.html

推荐文章

  • c#中decimal类型的特点有哪些

    Decimal类型在C#中是一种精确的十进制数据类型,用于存储较大范围的数字,避免了浮点数计算时可能出现的精度丢失问题。 Decimal类型支持存储小数点后28个数字,可...

  • c#中decimal类型怎么转换

    在c#中,可以使用强制类型转换或者显式转换来将decimal类型转换为其他数据类型。以下是一些示例: 将decimal类型转换为int类型: decimal num1 = 10.5m;
    in...

  • c#中decimal类型怎么赋值

    decimal类型是C#中的一种数据类型,用于存储小数值,通常用于金融和货币计算。您可以通过以下方式给decimal类型变量赋值:
    decimal myDecimal = 10.5m; // ...

  • c#异步方法怎么实现

    在C#中,异步方法可以通过使用关键字async和await来实现。下面是一个简单的示例:
    using System;
    using System.Threading.Tasks; class Program
    ...

  • c#正则表达式能提取网页链接吗

    是的,C#中的正则表达式可以用来提取网页链接。可以使用System.Text.RegularExpressions命名空间中的Regex类来编写和运行正则表达式。
    以下是一个示例代码片...

  • c#正则表达式怎样匹配邮箱

    在C#中,你可以使用Regex类来匹配邮箱地址。一个简单的匹配邮箱的正则表达式是:^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$。这个正则表达式会匹配大多数...

  • const和readonly在内存分配上有何不同

    const 和 readonly 都可以用来声明常量,但它们在内存分配和使用上有一些不同之处。
    const 关键字可以用于修饰变量,表示该变量的值在初始化后不能被修改。...

  • const和readonly能互相替换吗

    const和readonly在JavaScript中不能互相替换,它们有着不同的特性和用途。
    const声明的变量是常量,一旦赋值后就不能再改变。然而,如果const声明的是一个对...