std::basic_string::rfind
Материал из cppreference.com
< cpp | string | basic string
size_type rfind( const basic_string& str, size_type pos = npos ) const; |
(1) | |
size_type rfind( const CharT* s, size_type pos, size_type count ) const; |
(2) | |
size_type rfind( const CharT* s, size_type pos = npos ) const; |
(3) | |
size_type rfind( CharT ch, size_type pos = npos ) const; |
(4) | |
Находит последнюю подстроку, равную переданной символьной последовательности. Поиск начинается с позиции pos
, т.е. в поиске участвует только подстрока в диапазоне [pos, size)
. Если npos
передано в качестве позиции pos
, поиск будет произведен по всей строке.
1) Находит последнюю подстроку, равную str
.
2) Находит последнюю подстроку, равную первым count
символам строки, на которую указывает s
. s
может включать нулевые символы.
3) Находит последнюю подстроку, равную символьной строке, на которую указывает s
. Длина строки определяется по первому вхождению нулевого символа.
4) Находит последний символ ch
.
Содержание |
[править] Параметры
str | - | строка для поиска |
count | - | длина подстроки для поиска |
s | - | указатель на строку поиска |
ch | - | символ для поиска |
[править] Возвращаемое значение
позиция первого символа найденной подстроки или npos, если подстрока не найдена.
[править] Пример
Запустить этот код
#include <string> #include <iostream> void print(std::string::size_type n, std::string const &s) { if(n == std::string::npos) std::cout << "not found\n"; else std::cout << "found: " << s.substr(n) << '\n'; } int main() { std::string::size_type n; std::string const s = "This is a string"; // поиск в обратном направлении от начала строки n = s.rfind("is"); print(n, s); // поиск в обратном направлении с позиции 4 n = s.rfind("is", 4); print(n, s); // поиск единственного символа n = s.rfind('s'); print(n, s); // поиск единственного символа n = s.rfind('q'); print(n, s); }
Вывод:
found: is a string found: is is a string found: string not found
[править] См. также
поиск символов в строке (public функция-член) | |
поиск первого вхождения символов (public функция-член) | |
найти первое вхождение отсутствия символов (public функция-член) | |
найти последнее вхождение символов (public функция-член) | |
найти последнее вхождение отсутствия символов (public функция-член) |