std::string::find_last_of in C++ with Examples

06 Aug, 2021
The std::string::find_last_of is a string class member function which is used to find the index of last occurrence of any characters in a string. If the character is present in the string then it returns the index of the last occurrence of that character in the string else it returns string::npos.Header File:  
#include < string >
Template Class  
template < class T >
size_type
    find_last_of(const T& t, 
                 size_type pos = npos ) const noexcept();
Syntax 1:  
find_last_of(char ch)
Parameters: This function takes a given character and returns the position of the last occurrence of that character.Below is the program to illustrate string::find_last_of(): 
CPP
// C++ program to illustrate string::find_last_of#include <cstddef>#include <iostream>#include <string>using namespace std; // Driver Codeint main(){     // Given String    string str("Welcome to GeeksforGeeks!");     // Character to be found    char ch = 'e';     // To store the index of last    // character found    size_t found;     // Function to find the last    // character ch in str    found = str.find_last_of(ch);     // If string doesn't have    // character ch present in it    if (found == string::npos) {        cout << "Character " << ch             << " is not present in"             << " the given string.";    }     // Else print the last position    // of the character    else {        cout << "Character " << ch             << " is found at index: "             << found << endl;    }}
Character e is found at index: 21
 
Syntax 2:  
find_last_of(char ch, size_t position)
Parameters: This function takes a given character and an index till where the search is to be performed. It returns the position of the last occurrence of that character.Below is the program to illustrate string::find_last_of(): 
CPP
// C++ program to illustrate string::find_last_of#include <cstddef>#include <iostream>#include <string>using namespace std; // Driver Codeint main(){     // Given String    string str("Welcome to GeeksforGeeks!");     // Character to be found    char ch = 'e';     // To store the index of last    // character found    size_t found;     // Position till search is performed    int pos = 10;     // Function to find the last    // character ch in str[0, pos]    found = str.find_last_of(ch, pos);     // If string doesn't have    // character ch present in it    if (found == string::npos) {        cout << "Character " << ch             << " is not present in"             << " the given string.";    }     // Else print the last position    // of the character    else {        cout << "Character " << ch             << " is found at index: "             << found << endl;    }}
Character e is found at index: 6
 
Time Complexity: O(N), where N is the length of the given string.Auxiliary Space: O(1).
References: http://www.cplusplus.com/reference/string/string/find_last_of/ 
pankajsharmagfg
cpp-strings
STL
Algorithms
C++
C++ Programs
Searching
cpp-strings
Searching
STL
Algorithms
CPP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
DSA Sheet by Love Babbar
SDE SHEET - A Complete Guide for SDE Preparation
What is Hashing | A Complete Tutorial
Find if there is a path between two vertices in an undirected graph
CPU Scheduling in Operating Systems
Vector in C++ STL
Map in C++ Standard Template Library (STL)
Initialize a vector in C++ (7 different ways)
std::sort() in C++ STL
Bitwise Operators in C/C++