首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在C++中执行std :: string indexof,返回匹配字符串的索引?

在C++中,可以使用std::string类的成员函数find()来实现类似于indexof的功能,找到子字符串在原字符串中首次出现的位置。下面是一个简单的示例:

代码语言:cpp
复制
#include<iostream>
#include<string>

int main() {
    std::string main_str = "这是一个测试字符串";
    std::string sub_str = "测试";

    size_t found = main_str.find(sub_str);
    if (found != std::string::npos) {
        std::cout << "子字符串 \""<< sub_str << "\" 在主字符串中首次出现的位置是: "<< found<< std::endl;
    } else {
        std::cout << "子字符串 \""<< sub_str << "\" 未在主字符串中找到."<< std::endl;
    }

    return 0;
}

在这个示例中,我们使用find()函数来查找子字符串"测试"在主字符串"这是一个测试字符串"中首次出现的位置。如果找到了子字符串,find()函数将返回子字符串的起始索引,否则返回std::string::npos

注意:find()函数不仅可以用于std::string类型的对象,也可以用于C++11引入的std::basic_string_view类型的对象。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C++中对字符串的分割

由于C++中没有split函数,因此,为了能够对获取的字符串进行按一定符号进行分割,在此学习了通过字符串的find()方法和substr()方法来实现split();具体描述如下:  //涉及到string类的两个函数find和substr:  //  //1、find函数  //原型: size_t find(const string& str, size_t pos = 0) const;  //功能: 查找子字符串第一次出现的位置。  //参数说明:str为子字符串,pos为初始查找位置。  //返回值: 找到的话返回第一次出现的位置,否则返回string::npos  //2、substr函数  //原型: string substr(size_t pos = 0, size_t n = npos) const;  //功能: 获得子字符串。  //参数说明:pos为起始位置(默认为0),n为结束位置(默认为npos)  //返回值: 子字符串

00

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券