Boost logo

Boost :

From: Eric Niebler (eric_at_[hidden])
Date: 2004-09-02 19:50:37

It's been nearly a year since I first announced my intention to build a
new regular expression engine. It has finally reached a point where I am
comfortable recommending it for general use.

<< xpressive 0.9 >>

- What is it?
It is a regular expression engine which allows you to author regexes as
expression templates (like Spirit) *or* as strings (like Boost.Regex).

When written as an expression template, the regex is syntax-checked at
compile-time and statically bound for maximal inlining and optimization.
(See for more detail.)

Also, regular expressions can nest and call each other recursively,
which gives you the power of a context free grammar. That makes it
appropriate for simple parsing tasks.
(See for more detail.)

- What's the interface like?
xpressive is a Boost.Regex work-alike. It follows the regex
standardization proposal closely, but not too close! You can read about
all the differences in xpressive's documentation.

The domain-specific embeded language for xpressive is heavily influenced
by Spirit.

- Where can I read more?
xpressive's documentation is online at:

- Where can I download the code?
You can get the xpressive zip archive at:
It contains the source code and the documentation in PDF format.

Alternatively, you can get xpressive directly from the boost-sandbox.
Source code is at /boost-sandbox/boost/xpressive, and the regression
test and documentation are at /boost-sandbox/libs/xpressive.

Note: this is version 0.9. Check out the "Not Yet Implemented" section
in the documentation to see why. I'll be working towards v1.0 in the
coming weeks and months, but I am confident at this point that the
interface is not likely to change. What's there is stable and solid and
ready for (ab)use.

Original announcement of xpressive:


Eric Niebler
Boost Consulting

Boost list run by bdawes at, gregod at, cpdaniel at, john at