Практическое руководство. Использование регулярных выражений для проверки форматирования данных (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;
}