C++:泛型编程string(模式匹配)

本文介绍了一个使用C++实现的简单字符串模式匹配程序,该程序能够计算一个字符串在另一个字符串中出现的次数。通过示例输入输出展示了如何使用此程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++:泛型编程string(模式匹配)
Time Limit(Common/Java):1000MS/3000MS Memory Limit:65536KByte

Description

字符串模式匹配就是判断一个字符串是否在另一个字符串出现以及出现的位置。
编写程序设计,计算一个字符串在另一个字符串中出现的次数。

Input

包括多组测试数据。
第1行为测试数据的组数。
每组有2行,分别为2个字符串。

Output

第一个字符串在第二个字符串中出现的次数

Sample Input
4
aa aaaa
ab aaaa
aa aabbaabb
ab aabbaabb


Sample Output
3
0
2
2

#include <iostream>
#include <string>
using namespace std;
int main()
{   
   string s1,s2;  int n,i,m;
  cin>>m;
 while(m--)
 { 
  cin>>s1>>s2;n=0; 
 for(i=0;;)
 { 
    if(s2.find(s1,i)!=string::npos) 
   {    
   n++;i=s2.find(s1,i)+1;
   }
   else  break;
  }
  cout<<n<<endl;
 }
  return 0;
}



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值