Can I get the string with regular expression from std::regex? Or should I save it somewhere else if I want to use it later?
In boost you can do this:
boost::regex reg("pattern");
string p = reg.str();
or use << operator
cout << reg; will print pattern.
but in std::regex there is no str() or operator<<. Should I save my string somewhere else or I just can’t find it?
In debugger I can see what’s in std::regex.
I just looked in N3225, section 28.4 (header
<regex>synopsis) and indeed, thebasic_regextemplate has no member functionstr, and there are nooperator<<provided.The paragraph 28.8/2 provides a little insight on this :
What I understand is that the standard mandates that
basic_regexcan be constructed fromconst charT *but does not require the implementation to keep this string.