РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
419 of 815 menu

Флаг regex::icase

Флаг regex::icase относится к пространству имен std::regex_constants и используется при создании регулярного выражения для того, чтобы поиск совпадений выполнялся без учета регистра символов. Другими словами, символы 'a' и 'A' будут считаться одинаковыми. Флаг передается вторым параметром в конструктор класса regex или в функции regex_match, regex_search, regex_replace.

Синтаксис

regex::icase regex_constants::icase std::regex_constants::icase

Пример

Давайте создадим регулярное выражение с флагом icase и проверим, найдется ли шаблон "abc" в строке "ABC":

#include <iostream> #include <regex> using namespace std; int main() { string str = "ABC"; regex re("abc", regex::icase); if (regex_search(str, re)) { cout << "Match found" << endl; } else { cout << "No match" << endl; } return 0; }

Результат выполнения кода:

"Match found"

Пример

Теперь сравним поведение с флагом icase и без него:

#include <iostream> #include <regex> using namespace std; int main() { string str = "Hello World"; regex re1("hello"); regex re2("hello", regex::icase); cout << "Without icase: " << regex_search(str, re1) << endl; cout << "With icase: " << regex_search(str, re2) << endl; return 0; }

Результат выполнения кода:

"Without icase: 0" "With icase: 1"

Пример

Давайте заменим все вхождения слова в разных регистрах на "X" с помощью regex_replace и флага icase:

#include <iostream> #include <regex> using namespace std; int main() { string str = "cat Cat CAT"; regex re("cat", regex::icase); string res = regex_replace(str, re, "X"); cout << res << endl; return 0; }

Результат выполнения кода:

"X X X"

Смотрите также

  • класс regex,
    который представляет регулярное выражение
  • флаг multiline,
    который включает многострочный режим поиска
  • функция regex_search,
    которая ищет первое совпадение в строке
  • функция regex_replace,
    которая заменяет совпадения в строке
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить