Шаг 402.
Библиотека STL.
Строение строковых классов. Поиск. Поиск подстроки

    На этом шаге мы перечислим функции, используемые для поиска подстрок.

    Для выполнения указанных операций можно использовать следующие методы:

  size_type string::find (const string& str) const
  size_type string::find (const string& str, size_type idx) const
  size_type string::rfind (const string& str) const
  size_type string::rfind (const string& str, size_type idx) const
Функции ищут первое/последнее вхождение подстроки str (начиная с индекса idx).

    Функция find() выполняет поиск в прямом направлении и находит первое вхождение подстроки.

    Функция rfind() выполняет поиск в обратном направлении и находит последнее вхождение подстроки.

    Все функции возвращают индекс первого символа подстроки при успешном поиске или string::npos() в случае неудачи.

  size_type string::find (const char* cstr) const
  size_type string::find (const char* cstr, size_type idx) const
  size_type string::rfind (const char* cstr) const
  size_type string::rfind (const char* cstr, size_type idx) const
Функции ищут первое/последнее вхождение подстроки, содержащей символы С-строки cstr (начиная с индекса idx).

    Функция find() выполняет поиск в прямом направлении и находит первое вхождение подстроки.

    Функция rfind() выполняет поиск в обратном направлении и находит последнее вхождение подстроки.

    Все функции возвращают индекс первого символа подстроки при успешном поиске или string::npos() в случае неудачи.

    Аргумент cstr не должен содержать NULL-указатель.

  size_type string::find (const char* chars, size_type idx,
                                          size_type chars_len) const 
  size_type string::rfind (const char* chars, size_type idx,
                                         size_type chars_len) const
Функции ищут первое/последнее вхождение подстроки, содержащей chars_len символов массива chars (начиная с индекса idx).

    Функция find() выполняет поиск в прямом направлении и находит первое вхождение подстроки.

    Функция rfind() выполняет поиск в обратном направлении и находит последнее вхождение подстроки.

    Обе функции возвращают индекс первого символа подстроки при успешном поиске или string::npos() в случае неудачи.

    Символьный массив chars должен содержать не менее chars_len символов, которые могут иметь произвольные значения (символ \0 не имеет особой интерпретации).

    На следующем шаге мы рассмотрим поиск первого вхождения одного из нескольких символов.




Предыдущий шаг Содержание Следующий шаг