继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

str.find c++

森栏
关注TA
已关注
手记 366
粉丝 101
获赞 475

str.find() 是 C++ 标准库中的一个字符串查找函数,它的主要功能是在主字符串中查找一个子字符串,并返回子字符串首次出现的位置。该函数的出现,使得我们在处理字符串时,有了更灵活的方式去查找和获取子字符串信息。接下来,我们将通过一个简单的示例,来介绍一下 str.find() 的具体用法。

首先,我们需要定义两个字符串 str 和 subStr。这里,str = "Hello, world!";subStr = "world"。我们的目标是找到 subStr 在 str 中的位置。

然后,我们调用 str.find(subStr) 函数,并将返回值赋值给变量 pos。注意,这里的参数 pos 是可选的,当没有指定起始位置时,默认为 0。

接下来,我们进行判断。如果 pos 不等于 std::string::npos,说明子字符串 subStr 在 str 中被找到了,我们可以打印出子字符串首次出现的位置。这里,我们使用了 C++ 的 ios 流来进行输出。else 语句表示子字符串未在 str 中找到。

现在,让我们看一段实际代码:

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, world!";
    std::string subStr = "world";

    size_t pos = str.find(subStr);

    if (pos != std::string::npos) {
        std::cout << "Substring found at position: " << pos << std::endl;
    } else {
        std::cout << "Substring not found" << std::endl;
    }

    return 0;
}

运行上述代码,输出结果为:

Substring found at position: 7

从输出结果可以看出,str.find() 函数成功地找到了子字符串 "world",并返回了其在 str 中的位置 7。

str.find() 函数不仅能在主字符串中查找子字符串,还能在其他字符串(如串行字符串)中查找子字符串。例如,以下代码示例在串行字符串中查找子字符串:

#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, world!";
    std::string subStr = "world";

    size_t pos = str.find(subStr);

    if (pos != std::string::npos) {
        std::cout << "Substring found in string '" << str << "' at position: " << pos << std::endl;
    } else {
        std::cout << "Substring not found" << std::endl;
    }

    return 0;
}

运行此代码,输出结果同样为:

Substring found in string 'Hello, world!' at position: 7

综上所述,str.find() 函数是 C++ 中一个非常有用的字符串查找函数,通过它可以方便地找到子字符串,并获取子字符串在主字符串中的位置。在实际应用中,我们可以根据需求灵活地使用 str.find() 函数,提高代码的可读性和可维护性。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP