Use Boost.Xpressive instead of Boost.Regex