boost::xpressive::icase — Makes a sub-expression case-insensitive.
// In header: <boost/xpressive/regex_primitives.hpp> template<typename Expr> unspecified icase(Expr const & expr);
Use icase() to make a sub-expression case-insensitive. For instance, "foo" >> icase(set['b'] >> "ar") will match "foo" exactly followed by "bar" irrespective of case.