From cppreference.com
constexprsize_typerfind(basic_string_viewv,size_typepos=npos)constnoexcept; (1) (since C++17)constexprsize_typerfind(CharTch,size_typepos=npos)constnoexcept; (2) (since C++17)constexprsize_typerfind(constCharT*s,size_typepos,size_typecount)const; (3) (since C++17)constexprsize_typerfind(constCharT*s,size_typepos=npos)const; (4) (since C++17)Finds the last substring that is equal to the given character sequence. The search begins at pos and proceeds towards the beginning (thus, the found substring, if any, cannot begin in a position following pos). If
or any value not smaller than
-1 is passed as pos, the whole string will be searched.
1) Finds the last occurrence of v in this view, starting at position pos.
2) Equivalent to rfind(basic_string_view(std::addressof(ch),1),pos).
3) Equivalent to rfind(basic_string_view(s,count),pos).
4) Equivalent to rfind(basic_string_view(s),pos).
Parameters
v - view to search for pos - position at which to start the search count - length of substring to search for s - pointer to a character string to search for ch - character to search for Return value
Position of the first character of the found substring or
if no such substring is found.
Complexity
O(
* v.
) at worst.
Example
Run this code
#include<string_view>intmain(){usingnamespacestd::literals;constexprautoN=std::string_view::npos;static_assert(true&&(6=="AB AB AB"sv.rfind("AB"))&&(6=="AB AB AB"sv.rfind("ABCD",N,2))&&(3=="AB AB AB"sv.rfind("AB",5))&&(0=="AB CD EF"sv.rfind("AB",0))&&(2=="B AB AB "sv.rfind("AB",2))&&(N=="B AB AB "sv.rfind("AB",1))&&(5=="B AB AB "sv.rfind('A'))&&(4=="AB AB AB"sv.rfind('B',4))&&(N=="AB AB AB"sv.rfind('C')));}See also
find characters in the view
(public member function)
find first occurrence of characters
(public member function)
find last occurrence of characters
(public member function)
find first absence of characters
(public member function)
find last absence of characters
(public member function)
find the last occurrence of a substring
(public member function of std::basic_string<CharT,Traits,Allocator>)