From cppreference.com
constexprsize_typefind_last_of(basic_string_viewv,size_typepos=npos)constnoexcept; (1) (since C++17)constexprsize_typefind_last_of(CharTch,size_typepos=npos)constnoexcept; (2) (since C++17)constexprsize_typefind_last_of(constCharT*s,size_typepos,size_typecount)const; (3) (since C++17)constexprsize_typefind_last_of(constCharT*s,size_typepos=npos)const; (4) (since C++17)Finds the last character equal to one of characters in the given character sequence. Exact search algorithm is not specified. The search considers only the interval [0, pos]. If the character is not present in the interval,
will be returned.
1) Finds the last occurence of any of the characters of v in this view, ending at position pos.
2) Equivalent to find_last_of(basic_string_view(std::addressof(ch),1),pos).
3) Equivalent to find_last_of(basic_string_view(s,count),pos).
4) Equivalent to find_last_of(basic_string_view(s),pos).
Parameters
v - view to search for pos - position at which the search is to finish count - length of the string of characters to search for s - pointer to a string of characters to search for ch - character to search for Return value
Position of the last occurrence of any character of the substring, or
if no such character is found.
Complexity
O(
* v.
) at worst.
Example
Run this code
#include<string_view>usingnamespacestd::literals;constexprautoN=std::string_view::npos;static_assert(5=="delete"sv.find_last_of("cdef"sv)&&// └────────────────────┘N=="double"sv.find_last_of("fghi"sv)&&//0=="else"sv.find_last_of("bcde"sv,2/* pos [0..2]: "els" */)&&// └────────────────────────┘N=="explicit"sv.find_last_of("abcd"sv,4/* pos [0..4]: "expli" */)&&//3=="extern"sv.find_last_of('e')&&// └────────────────────┘N=="false"sv.find_last_of('x')&&//0=="inline"sv.find_last_of('i',2/* pos [0..2]: "inl" */)&&// └───────────────────────┘N=="mutable"sv.find_last_of('a',2/* pos [0..2]: "mut" */)&&//3=="namespace"sv.find_last_of("cdef",3/* pos [0..3]: "name" */,3/* "cde" */)&&// └─────────────────────────┘N=="namespace"sv.find_last_of("cdef",3/* pos [0..3]: "name" */,2/* "cd" */));intmain(){}See also
find characters in the view
(public member function)
find the last occurrence of a substring
(public member function)
find first occurrence of characters
(public member function)
find first absence of characters
(public member function)
find last absence of characters
(public member function)
find last occurrence of characters
(public member function of std::basic_string<CharT,Traits,Allocator>)