Boost
  C++ Libraries
  
  ...one of the most highly
  regarded and expertly designed C++ library projects in the
  world.
 — Herb Sutter and Andrei
  Alexandrescu, C++
  Coding Standards
boost::algorithm::find_all — Find all algorithm.
// In header: <boost/algorithm/string/split.hpp> template<typename SequenceSequenceT, typename Range1T, typename Range2T> SequenceSequenceT & find_all(SequenceSequenceT & Result, Range1T & Input, const Range2T & Search);
This algorithm finds all occurrences of the search string in the input.
Each part is copied and added as a new element to the output container. Thus the result container must be able to hold copies of the matches (in a compatible structure like std::string) or a reference to it (e.g. using the iterator range class). Examples of such a container are std::vector<std::string> or std::list<boost::iterator_range<std::string::iterator>> 
![]()  | 
Note | 
|---|---|
| 
 Prior content of the result will be overwritten. This function provides the strong exception-safety guarantee  | 
Parameters:  | 
  | 
||||||
Returns:  | 
A reference the result  |