Практическое руководство. Анализ строк с помощью регулярных выражений (C++/CLI)

В следующем примере кода демонстрируется простой анализ строки с использованием класса Regex в пространстве имен System.Text.RegularExpressions.Результат: построена строка, которая содержит несколько типов разделителей слов.При анализе строки используется класс Regex совместно с классом Match.Затем отдельно отображается каждое слово предложения.

Пример

// regex_parse.cpp
// compile with: /clr
#using <system.dll>

using namespace System;
using namespace System::Text::RegularExpressions;

int main( )
{
   int words = 0;
   String^ pattern = "[a-zA-Z]*";
   Console::WriteLine( "pattern : '{0}'", pattern );
   Regex^ regex = gcnew Regex( pattern );

   String^ line = "one\ttwo three:four,five six  seven";   
   Console::WriteLine( "text : '{0}'", line );
   for( Match^ match = regex->Match( line ); 
        match->Success; match = match->NextMatch( ) ) 
   {
      if( match->Value->Length > 0 )
      {
         words++;
         Console::WriteLine( "{0}", match->Value );
      }
   }
   Console::WriteLine( "Number of Words : {0}", words );

   return 0;
}

См. также

Другие ресурсы

Регулярные выражения в .NET Framework

Программирование в Visual C++ .NET