C语言字符串编辑问题(仿蓝桥杯)

给定一个字符串,其长度不超过200,现需要通过一行文本命令(文本命令长度不超过100个字符),对其进行编辑或统计。相应的功能有:

·统计子串:C str
命令格式为一行,包含一个字符C和一个字符串,之间有一个空格隔开。
功能:统计子串str在给定的字符串中无重叠的出现次数。
·删除子串:D str
命令格式为一行,包含一个字符D和一个字符串,之间有一个空格隔开。
功能:删除原字符串中的子串str,若有多个子串str,则删除第 一次出现的。
·插入子串: I str1 str2
命令格式为一行,包含一个字符I和2个字符串,每两项之间用一个空格隔开。
功能:表示将子串str2插入到子串str1的前面。若原串中有多个str1,则插入在最后一个子串的前面。
·替换子串:R str1 str2
命令格式为一行,报告一个字符R和2个字符串,每两项之间用一个空格隔开。
功能:表示在原字符串中用str2替换str1,str1为被替换的子串,str2为替换的子串,若在原串中有多个str1则应全部替换。但当替换进去的子串与原串拼接后新出现子串str1时,不用再替换。

输入格式
  2行
  第1行包含一个字符串,即给定的原字符串。
  第2行也是包含一个字符串,表示一个操作命令。

输出格式
  一行,包含一个数字或者一个字符串。对于统计子串的命令输出一个整数,对于其他命令,输出操作后的字符串。

受限于平台无法给出输入输出案例