Scroll to navigation

std::match_results::operator[](3) C++ Standard Libary std::match_results::operator[](3)

NAME

std::match_results::operator[] - std::match_results::operator[]

Synopsis


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


If n > 0 and n < size(), returns a reference to the std::sub_match representing the
part of the target sequence that was matched by the n^th captured marked
subexpression).


If n == 0, returns a reference to the std::sub_match representing the part of the
target sequence matched by the entire matched regular expression.


if n >= size(), returns a reference to a std::sub_match representing an unmatched
sub-expression (an empty subrange of the target sequence).


The behavior is undefined unless ready() == true.

Parameters


n - integral number specifying which match to return

Return value


Reference to the std::sub_match representing the specified matched subrange within
the target sequence.

Example

// Run this code


#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';
}

Output:


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

See also


str returns the sequence of characters for the particular sub-match
(public member function)

2024.06.10 http://cppreference.com