It searches the string for the first character, from the end of the string, that does not match any of the characters specified in its arguments.
Return value : Index of first unmatched character when successful or string::npos if no such character found.
Syntax 1: Search for the last character that is not an element of the string str.
size_type string::find_last_not_of (const string& str) const str : Another string with the set of characters to be used in the search.
// CPP code for size_type string:: find_last_not_of (char c) const #include <iostream> using namespace std;
// Function to demonstrate find_last_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str which
// is not equal to character 'G'
string::size_type ch = str.find_last_not_of( 'G' );
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : Hello World! String to be looked in : GeeksforGeeks First unmatched character : !
Syntax 2: Search for the last character from index idx that is not an element of the string str.
size_type string::find_last_not_of (const string& str, size_type idx) const str : Another string with the set of characters to be used in the search. idx : is the index number from where we have to start finding first unmatched character.
// CPP code for size_type string::find_last_not_of // (char c, size_type idx) const #include <iostream> using namespace std;
// Function to demonstrate find_last_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str from 6th index which
// is not equal to character 'G'
string::size_type ch = str.find_last_not_of( 'G' , 6);
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : geeKsforgeeks String to be looked in : GeeksforGeeks First unmatched character : K
Syntax 3: Searches for the last character that is or is not also an element of the C-string cstr.
size_type string::find_last_not_of (const char* cstr) const cstr : Another C-string with the set of characters to be used in the search.
Note that cstr may not be a null pointer (NULL).
// CPP code for size_type string::find_last_not_of // (const char* chars, size_type idx, size_type chars_len) const #include <iostream> using namespace std;
// Function to demonstrate find_first_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str from 4th index which
// is not equal to any of the first 3 characters from "svmnist"
string::size_type ch = str.find_last_not_of( "svmnist" , 4, 3);
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : GeeksforGeeks First unmatched character : G
Syntax 4: Search for the last character from index idx that is not an element of the C-string cstr
size_type string::find_last_not_of (const string& str, size_type idx) const cstr : Another C-string with the set of characters to be used in the search. idx : is the index number from where we have to start finding first unmatched character.
Note that cstr may not be a null pointer (NULL).
Output:
Original String : GeeksforGeeks First unmatched character : f
Syntax 5: Finds last character in str which is not equal to char c.
size_type string::find_last_not_of (const char* cstr) const c: Character c with which contents of str are required to be compared.
// CPP code for size_type string:: find_last_not_of (char c) const #include <iostream> using namespace std;
// Function to demonstrate find_last_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str which
// is not equal to character 'G'
string::size_type ch = str.find_last_not_of( 'G' );
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : GeeksforGeeks First unmatched character : s
Syntax 6: Finds last character in str from index idx which is not equal to char c.
size_type string::find_last_not_of (const char* cstr, size_type idx) const c: Character c with which contents of str are required to be compared. idx : index from where search of the first unmatched character is to be started
// CPP code for size_type string::find_last_not_of // (char c, size_type idx) const #include <iostream> using namespace std;
// Function to demonstrate find_last_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str from 6th index which
// is not equal to character 'G'
string::size_type ch = str.find_last_not_of( 'G' , 6);
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : GeeksforGeeks First unmatched character : o
Syntax 7: Search for the last character that is also not an element of the chars_len characters of the character array chars, starting at index idx.
size_type string::find_last_not_of (const char* chars, size_type idx, size_type chars_len) const *chars : is the character array with which searching of first unmatched is to be performed. idx : index number in string chars_len : is the character length in *chars to be picked for searching purpose
// CPP code for size_type string::find_last_not_of // (const char* chars, size_type idx, size_type chars_len) const #include <iostream> using namespace std;
// Function to demonstrate find_first_not_of void find_last_not_ofDemo(string str)
{ // Finds last character in str from 4th index which
// is not equal to any of the first 3 characters from "svmnist"
string::size_type ch = str.find_last_not_of( "svmnist" , 4, 3);
cout << "First unmatched character : " ;
cout << str[ch];
} // Driver code int main()
{ string str( "GeeksforGeeks" );
cout << "Original String : " << str << endl;
find_last_not_ofDemo(str);
return 0;
} |
Output:
Original String : GeeksforGeeks First unmatched character : k