
Hi Jeff, You can do this, but split is not to right function. It is a simple wrapper over the find/split_iterator. So I suggest you to use split_iterator directly: std::string some_data("1===2); typedef split_iteratorstring::iterator string_split_iterator; for(string_split_iterator It= make_split_iterator(some_data, first_finder("===", is_iequal())); It!=string_split_iterator(); ++It) { cout << copy_rangestd::string(*It) << endl; } Alternatively you can use iter_split, it has similar interface as split: iter_split( split_result, some_data, first_finder("===", is_iequal())); Regards, Pavol On Sat, Mar 25, 2006 at 07:55:34PM -0700, Jeff Garland wrote:
I've used the boost::algorithm::split successfully in the past with the is_any_of predicate as shown in the docs. Something like:
using namespace boost_algorithm; std::vectorstd::string split_result; split( split_result, some_string, is_any_of("=+") );
But now I want to match a multi char string exactly on the split. Effectively something like:
std::string some_data("1===2); split( split_result, some_data, is_equal("===") ); //result gets strings "1","2"
I'm not finding a predicate or easy way to do this. Is this not supported or am I just missing something?
Thx,
Jeff
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users