C++ String Library - find_last_not_of



Description

It searches the string for the first character that does not match any of the characters specified in its arguments.

Declaration

Following is the declaration for std::string::find_last_not_of.

size_t find_last_not_of (const string& str, size_t pos = npos) const;

C++11

size_t find_last_not_of (const string& str, size_t pos = npos) const noexcept;

C++14

size_t find_last_not_of (const string& str, size_t pos = npos) const noexcept;

Parameters

  • str − It is a string object.

  • len − It is used to copy the characters.

  • pos − Position of the first character to be copied.

Return Value

none

Exceptions

if an exception is thrown, there are no changes in the string.

Example

In below example for std::string::find_last_not_of.

#include <iostream>
#include <string>
#include <cstddef>

int main () {
   std::string str ("It erases trailing white-spaces   \n");
   std::string whitespaces (" \t\f\v\n\r");

   std::size_t found = str.find_last_not_of(whitespaces);
   if (found!=std::string::npos)
      str.erase(found+1);
   else
      str.clear();

   std::cout << '[' << str << "]\n";

   return 0;
}

The sample output should be like this −

[It erases trailing white-spaces]
string.htm
Advertisements