117.info
人生若只如初见

c++ string类的查找功能如何使用

C++中的std::string类提供了几种查找功能,包括find(), rfind(), find_first_of(), find_last_of()等。下面是这些函数的简单介绍和示例:

  1. size_t find(const std::string& str, size_t pos = 0) const noexcept;

    在当前字符串中从位置pos开始查找子字符串str第一次出现的位置。如果找不到则返回std::string::npos

    #include
    #include
    
    int main() {
        std::string s("hello world");
        std::string sub("world");
        size_t pos = s.find(sub);
        if (pos != std::string::npos) {
            std::cout << "Found at position: "<< pos<< std::endl;
        } else {
            std::cout << "Not found"<< std::endl;
        }
        return 0;
    }
    
  2. size_t rfind(const std::string& str, size_t pos = npos) const noexcept;

    在当前字符串中从位置pos开始查找子字符串str最后一次出现的位置。如果找不到则返回std::string::npos

    #include
    #include
    
    int main() {
        std::string s("hello world world");
        std::string sub("world");
        size_t pos = s.rfind(sub);
        if (pos != std::string::npos) {
            std::cout << "Found at position: "<< pos<< std::endl;
        } else {
            std::cout << "Not found"<< std::endl;
        }
        return 0;
    }
    
  3. size_t find_first_of(const std::string& str, size_t pos = 0) const noexcept;

    在当前字符串中从位置pos开始查找str中任意字符第一次出现的位置。如果找不到则返回std::string::npos

    #include
    #include
    
    int main() {
        std::string s("hello world");
        std::string chars("wro");
        size_t pos = s.find_first_of(chars);
        if (pos != std::string::npos) {
            std::cout << "Found at position: "<< pos<< std::endl;
        } else {
            std::cout << "Not found"<< std::endl;
        }
        return 0;
    }
    
  4. size_t find_last_of(const std::string& str, size_t pos = npos) const noexcept;

    在当前字符串中从位置pos开始查找str中任意字符最后一次出现的位置。如果找不到则返回std::string::npos

    #include
    #include
    
    int main() {
        std::string s("hello world");
        std::string chars("wro");
        size_t pos = s.find_last_of(chars);
        if (pos != std::string::npos) {
            std::cout << "Found at position: "<< pos<< std::endl;
        } else {
            std::cout << "Not found"<< std::endl;
        }
        return 0;
    }
    

这些函数可以根据需要进行组合使用,以实现更复杂的查找功能。注意,当使用std::string::npos作为参数时,表示从字符串的末尾开始查找。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe407AzsBBQ9VBA.html

推荐文章

  • clock()函数在C++中的精度如何

    clock()函数返回的是程序运行的时间,以时钟计时单位为单位。在大多数操作系统中,时钟计时单位的精度通常是毫秒级别的,即clock()函数返回的时间精度通常是毫秒...

  • 如何使用clock()函数测量程序运行时间

    要使用clock()函数测量程序运行时间,首先需要包含头文件。然后在程序的适当位置调用clock()函数两次,并计算它们之间的差值,就可以得到程序的运行时间。
    ...

  • clock()函数在C++中的作用是什么

    clock()函数在C++中用于返回程序执行开始后经过的时钟周期数。它主要用于测量程序执行时间或者用于计算程序执行时间等和时间相关的操作。需要注意的是,clock()函...

  • 如何在C++中使用clock()函数

    在C++中,可以使用clock()函数来获取程序运行时间。要使用clock()函数,需要包含头文件。然后可以通过调用clock()函数来获取当前时钟周期数,以测量程序执行的时...

  • 如何比较c++ string类的对象

    在 C++ 中,可以使用标准库中的 std::string 类来表示字符串 相等运算符 ==:用于检查两个字符串是否相等。如果两个字符串包含相同的字符序列,则它们相等。 #in...

  • string类在c++中的内存管理

    在C++中,std::string 是一个基于字符数组的容器,它提供了方便的接口来处理字符串。std::string 的内存管理通常涉及到动态内存分配和释放。
    以下是 std::s...

  • c++ string类如何进行字符串拼接

    在 C++ 中,std::string 类提供了几种方法来进行字符串拼接。以下是一些常见的方法: 使用 + 运算符: #include
    #include int main() { std::string str1 =...

  • c++ string类的构造函数有哪些

    C++中的std::string类包含了多种构造函数,可以方便地初始化字符串。以下是一些常见的std::string构造函数: 默认构造函数 std::string(); 创建一个空字符串,即...