STL find()函数
一般有2个输入参数,一个是待查询的字符串,一个是查询的起始位置,默认起始位置为0.
string 中的find(string&,location) ,在一个字符串中查找指定的单个字符或字符组。
string 中的find(string&,location) ,在一个字符串中查找指定的单个字符或字符组。
如果找到,返回首次匹配的开始位置,如果没有找到匹配的内容,则返回 string::npos。
#include<bits/stdc++.h> using namespace std; int main() { int t,sum; cin>>t; while(t--) { string s,p; int num=0; cin>>p>>s;//一般有2个输入参数,一个是待查询的字符串,一个是查询的起始位置,默认起始位置为0. sum=s.find(p);//string 中的find(字符串,起始位置) ,在一个字符串中查找指定的单个字符或字符组。 while(sum!=string::npos) { num++; sum=s.find(p,sum+1);//如果找到,返回首次匹配的开始位置,如果没有找到匹配的内容,则返回 string::npos。, } cout<<num<<endl; } }