C++ String Library - find



Description

It searches the string for the first occurrence of the sequence specified by its arguments.

Declaration

Following is the declaration for std::string::find.

size_t find (const string& str, size_t pos = 0) const;

C++11

size_t find (const string& str, size_t pos = 0) const noexcept;

C++14

size_t find (const string& str, size_t pos = 0) const noexcept;

Parameters

  • str − It is a string object.

  • len − It is used to copy the characters.

  • pos − Position of the first character to be copied.

Return Value

none

Exceptions

if an exception is thrown, there are no changes in the string.

Example

In below example for std::string::find.

#include <iostream>
#include <string>

int main () {
   std::string str ("sairamkrishna Mammahe is a tech person in tutorialspoint.com.");
   std::string str2 ("needle");

   std::size_t found = str.find(str2);
   if (found!=std::string::npos)
      std::cout << "first 'needle' found at: " << found << '\n';

   found=str.find("needles are small",found+1,6);
   if (found!=std::string::npos)
      std::cout << "second 'needle' found at: " << found << '\n';

   found=str.find("haystack");
   if (found!=std::string::npos)
      std::cout << "'haystack' also found at: " << found << '\n';

   found=str.find('.');
   if (found!=std::string::npos)
      std::cout << "Period found at: " << found << '\n';

   str.replace(str.find(str2),str2.length(),"preposition");
   std::cout << str << '\n';

   return 0;
}

The sample output should be like this −

Period found at: 56
string.htm
Advertisements