boost::split in C++ library

This function is similar to strtok in C. Input sequence is split into tokens, separated by separators. Separators are given by means of the predicate.


split(Result, Input, PredicateT Pred);

Input: A container which will be searched.
Pred: A predicate to identify separators. 
This predicate is supposed to return true 
if a given element is a separator.
Result: A container that can hold copies of 
references to the substrings.

Returns: A reference the result

Application : It is used to split a string into substrings which are separated by separators.


Input : boost::split(result, input, boost::is_any_of("\t"))
       input = "geeks\tfor\tgeeks"
Output : geeks
Explanation: Here in input string we have "geeks\tfor\tgeeks"
and result is a container in which we want to store our result
here separator is "\t".
// C++ program to split
// string into substrings
// which are separated by
// separater using boost::split

// this header file contains boost::split function
#include <bits/stdc++.h>
#include <boost/algorithm/string.hpp>
using namespace std;

int main()
    string input("geeks\tfor\tgeeks");
    vector<string> result;
    boost::split(result, input, boost::is_any_of("\t"));

    for (int i = 0; i < result.size(); i++)
        cout << result[i] << endl;
    return 0;



There is a difference between I CAN and CAN I email pawanasipugmailcom phone 7278786219

If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Please write to us at to report any issue with the above content.

Recommended Posts:

1 Average Difficulty : 1/5.0
Based on 1 vote(s)