Пространства имён
Варианты
Действия

std::basic_string::find

Материал из cppreference.com
< cpp‎ | string‎ | basic string
 
 
 
std::basic_string
Функции-члены
basic_string::basic_string
basic_string::operator=
basic_string::assign
basic_string::get_allocator
Доступ к элементам
basic_string::at
basic_string::operator[]
basic_string::front(C++11)
basic_string::back(C++11)
basic_string::data
basic_string::c_str
Итераторы
basic_string::begin
basic_string::cbegin

(C++11)
basic_string::end
basic_string::cend

(C++11)
basic_string::rbegin
basic_string::crbegin

(C++11)
basic_string::rend
basic_string::crend

(C++11)
Вместимость
basic_string::empty
basic_string::size
basic_string::length
basic_string::max_size
basic_string::reserve
basic_string::capacity
basic_string::shrink_to_fit(C++11)
Операции
basic_string::clear
basic_string::insert
basic_string::erase
basic_string::push_back
basic_string::pop_back(C++11)
basic_string::append
basic_string::operator+=
basic_string::compare
basic_string::replace
basic_string::substr
basic_string::copy
basic_string::resize
basic_string::swap
Поиск
basic_string::find
basic_string::rfind
basic_string::find_first_of
basic_string::find_first_not_of
basic_string::find_last_of
basic_string::find_last_not_of
Константы
basic_string::npos
Функции, не являющиеся членами
operator+
operator==
operator!=
operator<
operator>
operator<=
operator>=
swap(std::basic_string)
operator<<
operator>>
getline
stoi
stol
stoll
(C++11)
(C++11)
(C++11)
stoul
stoull
(C++11)
(C++11)
stof
stod
stold
(C++11)
(C++11)
(C++11)
to_string(C++11)
to_wstring(C++11)
Вспомогательные классы
hash<std::string>
hash<std::wstring>
hash<std::u32string>
hash<std::u16string>
(C++11)
 
size_type find( const basic_string& str, size_type pos = 0 ) const;
(1)
size_type find( const CharT* s, size_type pos, size_type count ) const;
(2)
size_type find( const CharT* s, size_type pos = 0 ) const;
(3)
size_type find( CharT ch, size_type pos = 0 ) const;
(4)

Находит первую подстроку, равную переданной последовательности символов. Поиск начинается с позиции pos, т.е. найденная подстрока не может начинаться в позиции, предшествующей 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.find("is");
    print(n, s);
 
    // поиск с позиции 5
    n = s.find("is", 5);
    print(n, s);
 
    // поиск единственного символа
    n = s.find('a');
    print(n, s);
 
    // поиск единственного символа
    n = s.find('q');
    print(n, s);
}

Вывод:

found: is is a string
found: is a string
found: a string
not found

[править] См. также

поиск последнего вхождения подстроки
(public функция-член) [edit]
поиск первого вхождения символов
(public функция-член) [edit]
найти первое вхождение отсутствия символов
(public функция-член) [edit]
найти последнее вхождение символов
(public функция-член) [edit]
найти последнее вхождение отсутствия символов
(public функция-член) [edit]