Sdílet prostřednictvím


Beispiel: Ändern von Datumsformaten

Aktualisiert: November 2007

Im folgenden Codebeispiel wird die Regex.Replace-Methode verwendet, um Datumsangaben mit dem Format mm/dd/yy durch das Format dd-mm-yy zu ersetzen.

Beispiel

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}");
}

Im folgenden Code wird gezeigt, wie die MDYToDMY-Methode in einer Anwendung aufgerufen werden kann.

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}");
   }

}

Ersetzungsmuster von Regex

In diesem Beispiel wird die Verwendung benannter Rückverweise innerhalb des Ersetzungsmusters für Replace(String, String, String) veranschaulicht. Hier fügt der Ersetzungsausdruck ${day} die Teilzeichenfolge ein, die von der Gruppe (?<day>…) erfasst wurde.

Die Replace(String, String, String)-Funktion ist eine von mehreren statischen Funktionen, mit denen Operationen mit regulären Ausdrücken verwendet werden können, ohne explizit ein reguläres Ausdrucksobjekt zu erstellen.

Siehe auch

Weitere Ressourcen

Reguläre Ausdrücke von .NET Framework