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;
}
}