Scroll to navigation

std::sub_match::operatorstring_type,std::sub_match::str(3) C++ Standard Libary std::sub_match::operatorstring_type,std::sub_match::str(3)

NAME

std::sub_match::operatorstring_type,std::sub_match::str - std::sub_match::operatorstring_type,std::sub_match::str

Synopsis


operator string_type() const; (1)
string_type str() const; (2)


Converts to an object of the underlying std::basic_string type.


The first version is an implicit conversion, the second one is explicit.

Parameters


(none)

Return value


Returns the matched character sequence as an object of the underlying
std::basic_string type. If the matched member is false, then the empty string is
returned.

Complexity


Linear in the length of the underlying character sequence.

Example

// Run this code


#include <cassert>
#include <iostream>
#include <regex>
#include <string>


int main()
{
const std::string html{R"("<a href="https://cppreference.com/">)"};
const std::regex re{"(http|https|ftp)://([a-z]+)\\.([a-z]{3})"};
std::smatch parts;
std::regex_search(html, parts, re);
for (std::ssub_match const& sub : parts)
{
const std::string s = sub; // (1) implicit conversion
assert(s == sub.str()); // (2)
std::cout << s << '\n';
}
}

Output:


https://cppreference.com
https
cppreference
com

2024.06.10 http://cppreference.com