STL find()函数

 一般有2个输入参数,一个是待查询的字符串,一个是查询的起始位置,默认起始位置为0.
 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;
    }
}




    
posted @ 2017-04-19 20:40  X_na  阅读(471)  评论(0编辑  收藏  举报