Программисты больше не нужны!
Нужны ИИ инженеры! Хотите научиться? Вступайте в канал!
442 of 824 menu
◀ ▶

Метод position

Метод position класса smatch возвращает позицию начала совпадения в исходной строке. Метод не принимает параметров и возвращает значение типа size_t - индекс первого символа совпадения. Если совпадение не найдено, поведение метода не определено.

Синтаксис

smatch.match_results.position()

Пример

Давайте найдем позицию совпадения в строке "abcde" с помощью регулярного выражения:

#include <iostream> #include <regex> #include <string> using namespace std; int main() { string str = "abcde"; regex re("bcd"); smatch matches; if (regex_search(str, matches, re)) { cout << matches.position() << endl; } return 0; }

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

1

Пример

Давайте найдем позицию совпадения в строке "12345" с помощью регулярного выражения:

#include <iostream> #include <regex> #include <string> using namespace std; int main() { string str = "12345"; regex re("34"); smatch matches; if (regex_search(str, matches, re)) { cout << matches.position() << endl; } return 0; }

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

2

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

  • класс smatch,
    который хранит результаты поиска совпадений
  • метод str,
    который возвращает совпавшую подстроку
  • метод length,
    который возвращает длину совпадения
  • метод prefix,
    который возвращает часть строки до совпадения
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить