查找字符串 find()函数和string::npos
find()函数和string::npos的介绍
今天菜鸡做一个查找字符串的题目用的无脑逐步查找,看题解后才知道有查找字符串的函数,代码见下个标题。
find()函数是c++中string类的函数,作用为查找字符或字符串。查找成功则返回第一个字符或者字串的位置,查找失败则返回string::npos 即为 -1。而string::npos是静态成员常量,通常作为find系列函数未找到的返回值。
查找字符串代码
#include<bits/stdc++.h>
using namespace std;
int main(){
string s1, s2;
cin >> s1 >> s2;
if(s1.find(s2) != string::npos)
//如果s2在s1中未找到则返回string::npos
cout << "s2在s1中" << endl;
else cout << "s2不在s1中" << endl;
return 0;
}
其他find()函数
find_first_of()函数:
查找在字符串中第一个与str中的某个字符匹配的字符,返回它的位置。
find_first_not_of()函数:
在字符串中查找第一个与str中的字符都不匹配的字符,返回它的位置。
find_last_of()函数:
在字符串中查找最后一个与str中的某个字符匹配的字符,返回它的位置。
find_last_not_of()函数:
在字符串中查找最后一个与str中的字符都不匹配的字符,返回它的位置。