Removing the last n characters of a string in C++
In this tutorial, we are going to learn about how to remove the last n characters of a string in C++.
Consider, we have the following string.
string car = "tesla";
Now, we want to remove the last 3 characters sla
from the above string and return te
.
Removing the last n characters
To remove the last n characters of a string, we can use the built-in erase()
function by passing the string.length()-n
as an argument to it.
Where n
is the number of characters we need to remove from the end of a string.
Here is an example, that removes the last 3 characters from the following string:
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
string car = "tesla";
car.erase(car.length()-3); // removes last 3 characters
cout<< car;
return 0;
}
Output:
"te"
Note: The erase() function mutates the original string.
Similarly, we can also use the substr()
function to remove the last n characters of a string in C++.
Example:
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
string car = "tesla";
string result = car.substr(0, car.length()-3);
cout<< result;
return 0;
}
In the example above, we have passed 0, car.length()-3
to the substr()
function. so it begins the extraction at index 0, to the car.length()-3.
The length() function returns the total number of characters in a given string.
Note: The substr() function returns a new string with the specified characters instead of mutating the original string.