.net 更改日期格式

示例:更改日期格式

下面的代码示例使用 Regex.Replace 方法将 mm/dd/yy 格式的日期替换为 dd-mm-yy 格式的日期。

static string MDYToDMY(string input) 
{
     return Regex.Replace(input, 
         "\\b(?<month>\\d{1,2})/(?<day>\\d{1,2})/(?<year>\\d{2,4})\\b",
         "${day}-${month}-${year}");
}

下面的代码演示如何在应用程序中调用 MDYToDMY 方法。

using System;
using System.Globalization;
using System.Text.RegularExpressions;

public class Class1
{
   public static void Main()
   {
      string dateString = DateTime.Today.ToString("d", 
                                        DateTimeFormatInfo.InvariantInfo);
      string resultString = MDYToDMY(dateString);
      Console.WriteLine("Converted {0} to {1}.", dateString, resultString);
   }

   static string MDYToDMY(string input) 
   {
        return Regex.Replace(input, 
            "\\b(?<month>\\d{1,2})/(?<day>\\d{1,2})/(?<year>\\d{2,4})\\b",
            "${day}-${month}-${year}");
   }

}
// The example displays the following output to the console if run on 8/21/2007:
//      Converted 08/21/2007 to 21-08-2007.

 


注释

正则表达式模式 \b(?<month>\d{1,2})/(?<day>\d{1,2})/(?<year>\d{2,4})\b 的含义如下表所示。

 

模式

说明

\b

在单词边界处开始匹配。

(?<month>\d{1,2})

匹配一个或两个十进制数字。 这是 month 捕获组。

/

匹配左斜线。

(?<day>\d{1,2})

匹配一个或两个十进制数字。 这是 day 捕获的组。

/

匹配左斜线。

(?<year>\d{2,4})

匹配两个到四个十进制数。 这是 year 捕获的组。

\b

在单词边界处结束匹配。

 

 
 


 

 

 

 

 

 

 

 

模式 ${day}-${month}-${year} 如下表所示定义了替换字符串。

 

 

模式

说明

$(day)

添加由 day 捕获组捕获的字符串。

-

添加连字符。

$(month)

添加由 month 捕获组捕获的字符串。

-

添加连字符。

$(year)

添加由 year 捕获组捕获的字符串。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。