Spec-Zone.ru › C++

std::match_results<BidirIt,Alloc>::operator[]

const_reference operator[]( size_type n ) const;
(since C++11)

Если n > 0 и n < size(), возвращает ссылку на std::sub_match, представляющую часть целевой последовательности, которая была совпадением с n-ым захваченным меченым подвыражением.

Если n == 0, возвращает ссылку на std::sub_match, представляющую часть целевой последовательности, соответствующую всему совпавшему регулярному выражению.

Если n >= size(), возвращает ссылку на std::sub_match, представляющую незахваченное подвыражение (пустой поддиапазон целевой последовательности).

Поведение не определено, если ready() == true.

Параметры

n - целочисленное число, указывающее, какое совпадение вернуть

Возвращаемое значение

Ссылка на std::sub_match, представляющую указанный совпадающий поддиапазон в целевой последовательности.

Пример

#include <iostream>
#include <regex>
#include <string>
 
int main()
{
    std::string target("baaaby");
    std::smatch sm;
 
    std::regex re1("a(a)*b");
    std::regex_search(target, sm, re1);
    std::cout << "entire match: " << sm[0] << '\n'
              << "submatch #1: " << sm[1] << '\n';
 
    std::regex re2("a(a*)b");
    std::regex_search(target, sm, re2);
    std::cout << "entire match: " << sm[0] << '\n'
              << "submatch #1: " << sm[1] << '\n';
}

Вывод:

entire match: aaab
submatch #1: a
entire match: aaab
submatch #1: aa

См. также

str
возвращает последовательность символов для конкретного подсовпадения
(общедоступный член-функция)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/regex/match_results/operator_at

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API