C++ boost::algorithm::string::trim_left()














































C++ boost::algorithm::string::trim_left()



trim_left():
     This function is included in the "boost/algorithm/string" library. This library contains some brilliant methods which  help in accomplishing string manipulations that are lacking in STL library. 
This function "trim_left" is used to remove all the leading white-spaces in the string i.e., all the spaces present on the left side of the string as shown in the below examples:

Examples:
1. Original String: " Hello nice to meet you"
Modified String: "Hello nice to meet you"

2. Original String: " You are using boost "
Modified String: "You are using boost "

header file:
boost/algorithm/string.hpp

syntax:
     trim_left(input , loc);

parameters:
    input : an input sequence
    loc :  a locale used for space classification

    The modification of the string is done in-place if trim_left() is used.    
    There is another variation present i.e., trim_left_copy() , which takes the same parameters as input, but instead of  modifying the string in-place it returns a copy of the modified string while keeping the original string as it is.

SAMPLE CODE:

#include<iostream> #include<boost/algorithm/string.hpp> using namespace std; using namespace boost::algorithm; int main() { string s1 = " Welcome to Boost "; string s2 = s1; //storing another copy of string s1 in s2 string s3 = " You are using boost library"; //trimming only the string s2 trim_left(s2); //trimming s3 and storing the modified copy in newString string newString = trim_left_copy(s3); cout<<"EXAMPLE 1"<<endl; cout<<"The original string: "; cout<<s1<<endl; cout<<"The modified string: "; cout<<s2<<endl; cout<<"EXAMPLE 2"<<endl; cout<<"The original string: "; cout<<s3<<endl; cout<<"The modified string: "; cout<<newString<<endl; }

OUTPUT:


EXPLANATION:

As we an observe from the above code that trim_left() takes any string as input and it removes all the leading whitespaces. It leaves the rest of characters and symbols untouched.
Similarly, trim_left_copy()  instead of modifying the original string i.e., "s3", it returns the modified string to "newString".


More Articles of Md Safi Ur Rahman Khan:

Name Views Likes
C++ boost::algorithm::string::join() 577 0
C++ boost::algorithm::string::split() 607 0
C++ boost::algorithm::string::find_all() 646 0
C++ boost::algorithm::string::erase_tail() 249 0
C++ boost::algorithm::string::replace_tail() 211 0
C++ boost::algorithm::string::erase_head() 277 0
C++ boost::algorithm::string::replace_head() 209 0
C++ boost::algorithm::string::erase_all() 895 1
C++ boost::algorithm::replace_all() 2049 0
C++ boost::algorithm::string::erase_nth() 215 0
C++ boost::algorithm::string::replace_nth() 221 0
C++ boost::algorithm::string::replace_last() 246 0
C++ boost::algorithm::string::erase_last() 243 0
C++ boost::algorithm::string::erase_first() 215 1
C++ boost::algorithm::string::replace_first() 432 0
C++ boost::algorithm::string::find_token() 351 0
C++ boost::algorithm::string::find_tail() 200 1
C++ boost::algorithm::string::find_head() 212 0
C++ boost::algorithm::string::find_last() 300 1
C++ boost::algorithm::string::find_first() 749 1
C++ boost::algorithm::string::all() 224 1
C++ boost::algorithm::string::lexicographical_compare() 214 0
C++ boost::algorithm::string::equals() 378 0
C++ boost::algorithm::string::contains() 1822 0
C++ boost::algorithm::string::ends_with() 1282 0
C++ boost::algorithm::string::starts_with() 2058 0
C++ boost::algorithm::string::trim_if() 712 1
C++ boost::algorithm::string::trim() 3796 0
C++ boost::algorithm::string::trim_right_if() 522 1
C++ boost::algorithm::string::trim_left_if() 384 1
C++ boost::algorithm::string::trim_right() 282 3
C++ boost::algorithm::string::trim_left() 364 1
C++ boost::algorithm::string::to_lower() 736 1
C++ boost::algorithm::string::to_upper() 296 1
C++ Program to Implement Dequeue 1327 5
C++ Program to Implement Dequeue 241 3

Comments