Boost logo

Boost :

From: Darren Cook (darren_at_[hidden])
Date: 2005-09-16 18:16:28


>>There are results from of performance benchmarks of static xpressive
>>vs. dynamic xpressive vs. Boost.Regex in the Appendix of xpressive's
>>documentation. You must have missed it. See:

Sorry, yes I missed the appendices.

>>http://boost-sandbox.sf.net/libs/xpressive/doc/html/xpressive/perf.html
>>
>>In short, xpressive comes out consistently ahead of Boost.Regex on
>>short matches, and roughly on par for longer matches (with wide
>>variation).

Interesting. This left me with two questions:
 1. Why is dynamic quicker than static xpressive on some expressions?

 2. Why is boost::regex quicker on longer strings? Something to do with
buffering or dynamic memory usage?

I thought "Huck[[:alpha:]]+" (expressive twice as quick) vs.
"[[:alpha:]]+ing" (boost::regex twice as quick) was very curious. Is
this due to some design decision, or just something waiting to be optimized?

>>Agreed. FYI, "_" matches any one character. ~_n matches any character
>>that is not '\n'. I also need to describe _ln which matches a logical
>>newline (eg., "\n" or "\r" or "\r\n" or other line separators) and
>>~_ln which matches any one character that is not a line separator.

_ln sounds useful. Is that in perl/PCRE ?

Darren


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk