Boost logo

Boost Users :

From: Paul Scruby (boost_at_[hidden])
Date: 2003-11-17 14:33:14

I have question about match_result. How can I find out what was matched
from the regular expression? In the boost documentation, the example
for regex_search does something similar to this...

regex needle("foo|bar");
string haystack("blah bar blah");
string::const_iterator start = haystack.begin();
string::const_iterator end = haystack.end();
boost::match_results<string::const_iterator> what;
*unsigned* *int* flags = boost::match_default;
while*(regex_search(start, end, what, expression, flags))
        // please output 'bar'
        string match(string(what[5].first, what[5].second) + std::string(what[6].first, what[6].second));
         cout << "Found '" << match << "'\n";
        start = what[0].second;
        flags |= boost::match_prev_avail;
        flags |= boost::match_not_bob;

However, this is outputing nothing. I also tried what.str(), but that
gave me nothing too.

Thanks again,


Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at