示例:更改日期格式

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

示例

Function MDYToDMY(input As String) As String
    Return Regex.Replace(input, _
        "\b(?<month>\d{1,2})/(?<day>\d{1,2})/(?<year>\d{2,4})\b", _
        "${day}-${month}-${year}")
End Function
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 方法。

Imports System.Globalization
Imports System.Text.RegularExpressions

Module DateFormatReplacement
   Public Sub Main()
      Dim dateString As String = Date.Today.ToString("d", _
                                           DateTimeFormatInfo.InvariantInfo)
      Dim resultString As String = MDYToDMY(dateString)
      Console.WriteLine("Converted {0} to {1}.", dateString, resultString)
   End Sub

    Function MDYToDMY(input As String) As String
        Return Regex.Replace(input, _
            "\b(?<month>\d{1,2})/(?<day>\d{1,2})/(?<year>\d{2,4})\b", _
            "${day}-${month}-${year}")
    End Function
End Module
' The example displays the following output to the console if run on 8/21/2007:
'      Converted 08/21/2007 to 21-08-2007.
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 捕获组捕获的字符串。

请参见

概念

.NET Framework 正则表达式