std::regex_match сопоставляет шаблон со всей строкой целиком. Если лишние символы в начале или конце не входят в шаблон, результат будет false.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpRgMFm 33 of 696 menu
◀ ▶

Полное совпадение в регулярках в C++

Функция std::regex_match сопоставляет шаблон со всей строкой целиком. Если лишние символы в начале или конце не входят в шаблон, результат будет false. В объект std::smatch при успехе попадает найденный текст:

std::string txt = "123 456 789"; std::smatch partial; std::regex_match(txt, partial, std::regex(R"(\d+)")); std::smatch whole; bool ok = std::regex_match(txt, whole, std::regex(R"(\d+ \d+ \d+)")); std::cout << partial.matched << "\n"; std::cout << whole.str() << "\n";

Дана строка:

std::string txt = "abc";

Проверьте, состоит ли строка только из строчных букв, и выведите результат в консоль.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить