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

В следующем примере демонстрируется использование регулярных выражений для проверки формата строки.Строка проверяется на соответствие заданному в виде регулярного выражения шаблону телефонного номера.Регулярное выражение "\d{3}-\d{3}-\d{4}", используемое в приведенном ниже примере кода, указывает, что допустимый телефонный номер должен состоять из трех полей.В этой строке "d" означает, что ожидаются цифры, а аргумент после "d" определяет обязательное количество цифр, которые должны присутствовать в поле.В данном случае требуется, чтобы поля, составляющие телефонный номер, разделялись знаком тире.

Пример

// regex_validate.cpp
// compile with: /clr
#using <System.dll>

using namespace System;
using namespace Text::RegularExpressions;

int main()
{
   array<String^>^ number = 
   {
      "123-456-7890", 
      "444-234-22450", 
      "690-203-6578", 
      "146-893-232",
      "146-839-2322",
      "4007-295-1111", 
      "407-295-1111", 
      "407-2-5555", 
   };

   String^ regStr = "^\\d{3}-\\d{3}-\\d{4}$";

   for ( int i = 0; i < number->Length; i++ )
   {
      Console::Write( "{0,14}", number[i] );

      if ( Regex::IsMatch( number[i], regStr ) )
         Console::WriteLine(" - valid");
      else
         Console::WriteLine(" - invalid");
   }
   return 0;
}

См. также

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

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

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