Trimming White Spaces in C++ Strings - Remove Leading and Trailing Spaces

├Źndice
  1. Introduction
  2. Method 1: Using the erase and find functions
  3. Method 2: Using the boost library
  4. Conclusion

Introduction

When working with strings in C++, it's common to encounter situations where you need to remove leading and trailing white spaces. This can be useful for tasks such as parsing user input or cleaning up data. In this article, we'll explore a few different approaches for trimming white spaces in C++ strings.

Method 1: Using the erase and find functions

One approach for trimming white spaces in C++ strings is to use the erase and find functions. This method involves finding the first and last non-white space character in the string and then erasing any characters before or after those positions.


std::string str = "    Hello World    ";
size_t first = str.find_first_not_of(" ");
size_t last = str.find_last_not_of(" ");
str = str.substr(first, (last - first + 1));

In the above code, we start by initializing a string with some leading and trailing white spaces. We then use the find_first_not_of function to find the position of the first non-white space character in the string and store it in the 'first' variable. We do the same with the find_last_not_of function to find the position of the last non-white space character in the string and store it in the 'last' variable. Finally, we use the substr function to extract the substring between the first and last positions and assign it back to the original string.

Method 2: Using the boost library

Another approach for trimming white spaces in C++ strings is to use the boost library. Boost provides a trim function that removes leading and trailing white spaces from a string.


#include <boost/algorithm/string.hpp>

std::string str = "    Hello World    ";
boost::trim(str);

In the above code, we include the boost/algorithm/string.hpp header and initialize a string with some leading and trailing white spaces. We then use the trim function from the boost library to remove the white spaces from the string.

Conclusion

In this article, we've explored two different approaches for trimming white spaces in C++ strings. The first approach involves using the erase and find functions to find the first and last non-white space characters in the string and then erasing any characters before or after those positions. The second approach involves using the boost library's trim function to remove leading and trailing white spaces from a string. Both of these approaches are effective for cleaning up user input or data.

Click to rate this post!
[Total: 0 Average: 0]

Related posts

Leave a Reply

Your email address will not be published. Required fields are marked *

Go up

Below we inform you of the use we make of the data we collect while browsing our pages. You can change your preferences at any time by accessing the link to the Privacy Area that you will find at the bottom of our main page. More Information