zl程序教程

您现在的位置是:首页 >  后端

当前栏目

C++-容器-string:查找子字符串在原字符串中的下标【int idx = a.find(b)】

C++容器 string 字符串 查找 Find int 下标
2023-09-27 14:20:39 时间

C++的string类提供了字符串中查找另一个字符串的函数find。

其重载形式为:string::size_type string::find(string &);

功能为在string对象中,查找参数string类型的字符串是否存在,如果存在,返回起始位置。不存在则返回 string::npos。

#include <iostream>
#include <string>
using namespace std;
int main()
{
    string a="abcdefghigklmn";
    string b="def";
    string c="123";
    string::size_type idx; 
    idx=a.find(b);//在a中查找b.
    if(idx == -1)//不存在 string::npos == 1
        cout << "not found\n";
    else//存在
        cout <<"found\n"; 

    idx=a.find(c);//在a中查找c。
    if(idx == string::npos )//不存在
        cout << "not found\n";
    else//存在
        cout <<"found\n"; 
    return 0;
}