
On 3/12/2010 9:54 PM, Surya Kiran Gullapalli wrote:
Hello all, I'm trying to match a string with xpressive. The match is fine, but the nested results doesn't seem to be working. The code is here http://pastebin.com/TLSiRMRh
my regex /combinedReg/ is made up of 3 sregex objects. Two of them store the results using mark_tag objects. When I try to match the string, I get a complete match and toplevel match says it has 3 nested results. Which is correct.
Yes.
When I try to loop over those three nested results for more nested results, I get nothing.
Yes.
what am I doing wrong?
Nothing. The three nested results correspond to the three regexes nested in combinedReg: numReg, holidayName, and holidayDateDetails. None of those regexes has other regexes nested within them. Are you confusing nested regexes with marked sub-expressions? Perhaps if you change your innermost nested FOREACH statement with something like this: BOOST_FOREACH (const ssub_match& ssub, res) cout << '\t' << ssub << endl; ... you'll get something like what you were expecting. HTH, -- Eric Niebler BoostPro Computing http://www.boostpro.com