Boost C++ Libraries of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

Interfacing With Non-Standard String Types

Working With Unicode and ICU String Types
Introduction to using Regex with ICU
Unicode regular expression types
Unicode Regular Expression Algorithms
Unicode Aware Regex Iterators
Using Boost Regex With MFC Strings
Introduction to Boost.Regex and MFC Strings
Regex Types Used With MFC Strings
Regular Expression Creation From an MFC String
Overloaded Algorithms For MFC String Types
Iterating Over the Matches Within An MFC String

The Boost.Regex algorithms and iterators are all iterator-based, with convenience overloads of the algorithms provided that convert standard library string types to iterator pairs internally. If you want to search a non-standard string type then the trick is to convert that string into an iterator pair: so far I haven't come across any string types that can't be handled this way, even if they're not officially iterator based. Certainly any string type that provides access to it's internal buffer, along with it's length, can be converted into a pair of pointers (which can be used as iterators).

Some non-standard string types are sufficiently common that wrappers have been provided for them already: currently this includes the ICU and MFC string class types.