Reference
C Library
IOstream Library
Strings library
STL Containers
STL Algorithms
Miscellaneous
Strings library
char_traits
classes:
string
global functions:
getline
operator+
operator<<
operator>>
comparison operators
swap
string
string::string
member constants:
string::npos
member functions:
string::append
string::assign
string::at
string::begin
string::capacity
string::clear
string::compare
string::copy
string::c_str
string::data
string::empty
string::end
string::erase
string::find
string::find_first_not_of
string::find_first_of
string::find_last_not_of
string::find_last_of
string::get_allocator
string::insert
string::length
string::max_size
string::operator+=
string::operator=
string::operator[]
string::push_back
string::rbegin
string::rend
string::replace
string::reserve
string::resize
string::rfind
string::size
string::substr
string::swap


string::rfind

public member function
size_t rfind ( const string& str, size_t pos = npos ) const;
size_t rfind ( const char* s, size_t pos, size_t n ) const;
size_t rfind ( const char* s, size_t pos = npos ) const;
size_t rfind ( char c, size_t pos = npos ) const;

Find last occurrence of content in string

Searches the string for the content specified in either str, s or c, and returns the position of the last occurrence in the string.

When pos is specified, the search only includes characters between the beginning of the string and position pos, ignoring any possible occurrences after pos.

Parameters

str
string to be searched for in the object. The entire content of str must be matched in some part of the string to be considered a match.
s
Array with a sequence of characters.
In the second member function version, the size of the content to be matched is only determined by parameter n.
In the third version, a null-terminated sequence is expected, and its end is determined by the first occurrence of a null character in it.
n
Length of sequence of characters to search for.
c
Individual character to be searched for.
pos
Position of the last character in the string to be taken into consideration for possible matches. The default value npos indicates that the entire string is searched.

Return Value

The position of the last occurrence in the string of the searched content.
If the content is not found, the member value npos is returned.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// string::rfind
#include <iostream>
#include <string>
using namespace std;
int main ()
{
  string str ("The sixth sick sheik's sixth sheep's sick.");
  string key ("sixth");
  size_t found;
  found=str.rfind(key);
  if (found!=string::npos)
    str.replace (found,key.length(),"seventh");
  cout << str << endl;
  return 0;
}


Output:
The sixth sick sheik's seventh sheep's sick.

Basic template member declarations

( basic_string<charT,traits,Allocator> )
1
2
3
4
5
typedef typename Allocator::size_type size_type;
size_type rfind ( const basic_string& str, size_type pos = npos ) const;
size_type rfind ( const charT* s, size_type pos, size_type n ) const;
size_type rfind ( const charT* s, size_type pos = npos ) const;
size_type rfind ( charT c, size_type pos = npos ) const;


See also