Freigeben über


Gewusst wie: Verwenden von regulären Ausdrücken zum Ändern der Anordnung von Daten (C++/CLI)

Im folgenden Codebeispiel wird dargestellt, wie in .NET Framework mithilfe regulärer Ausdrücke Daten neu angeordnet und formatiert werden. Im folgenden Codebeispiel werden mit der Regex-Klasse und der Match-Klasse der erste und der letzte Name in einer Zeichenfolge extrahiert und anschließend in umgekehrter Reihenfolge angezeigt.

Die Regex-Klasse wird zum Konstruieren eines regulären Ausdrucks verwendet, durch den das aktuelle Format der Daten beschrieben wird. Es wird angenommen, dass die zwei Namen durch ein Komma getrennt sind und eine beliebige Anzahl von Leerzeichen vor und/oder nach dem Komma stehen. Anschließend wird mit der Match-Methode jede Zeichenfolge analysiert. Wenn dieser Vorgang erfolgreich abgeschlossen wird, werden der erste und der letzte Name im Match-Objekt abgerufen und angezeigt.

Beispiel

// regex_reorder.cpp
// compile with: /clr
#using <System.dll>
using namespace System;
using namespace Text::RegularExpressions;

int main()
{
   array<String^>^ name = 
   {
      "Abolrous, Sam", 
      "Berg,Matt", 
      "Berry , Jo",
      "www.contoso.com"
   };

   Regex^ reg = gcnew Regex("(?<last>\\w*)\\s*,\\s*(?<first>\\w*)");

   for ( int i=0; i < name->Length; i++ )
   {
      Console::Write( "{0,-20}", name[i] );
      Match^ m = reg->Match( name[i] );
      if ( m->Success )
      {
         String^ first = m->Groups["first"]->Value;
         String^ last = m->Groups["last"]->Value;
         Console::WriteLine("{0} {1}", first, last);
      }
      else
         Console::WriteLine("(invalid)");
   }
   return 0;
}

Siehe auch

Weitere Ressourcen

Reguläre Ausdrücke von .NET Framework

.NET-Programmierung in Visual C++