c语言替换字符串中的子串

#include
#include
int checkStr(char *s1, char *s2) //匹配字符串相不相等
{
   for (int i = 0; i < strlen(s2); i++)
    {
      if (s1[i] != s2[i]) return 0;
    }
   return 1;
}
void reStr(char *s1, char *s2, char *s3)//替换字符串
{
   int s1len = strlen(s1),
       s2len = strlen(s2),
       s3len = strlen(s3);
   int n1 = s1len - s2len;
   int n2 = s2len - s3len;
   if (n2 > 0)
    {
      //后面的字符串全部向前移n2个位置
      for (int i = s2len; i < s1len; i++)
       {
         s1[i - n2] = s1[i];
       }
       s1[s1len - n2] = '\0';
     }
   else if (n2 < 0)//后面的字符串全部向后移n2个位置
    {  
       for (int i = s1len; i >= s2len; i--)
       {
         s1[i - n2] = s1[i];
        }
        s1[s1len - n2 + 1] = '\0';
     }
    //然后在把要替换的字符串插进去
    for (int i = 0; i < s3len; i++)
      {
        s1[i] = s3[i];
       }
}
int replaceStr(char *s1, char *s2, char *s3)//替换字符串函数返回n表示替换了多少次
{
  int n = 0;
  for (int i = 0; i < strlen(s1); i++)
   {
     if (s1[i] == s2[0] && checkStr(&s1[i], s2) == 1)
      {
         reStr(&s1[i], s2, s3);
         n++;
       }
   }
   return n;
}
int main()
{
   // test!!!
   char s1[30] = "qwertyuerp";
   char s2[] = "er";
   char s3[] = "111111";
   printf("%d\n%s\n", replaceStr(s1, s2, s3), s1);
   return 0;
}

c语言替换字符串中的子串相关推荐

  1. c语言 替换字符串中的子串,字符串中的子串替换

    在很多编程语言中,都封装了字符串替换的操作,那么我们这里自己用C语言来实现一个字符串替换的函数.具体需求为:Replace(String S,String T,String V),用V替换主串S中出现 ...

  2. python替换字符串元素_python替换字符串中的子串图文步骤

    python替换字符串中的子串图文步骤 修改字符串本身是不可能的,因为字符串是不可变类型,只能是通过某些方法来产生它的副本.再把副本赋值给原字符串,达到类似替换的作用.这里介绍几种方法. 旧串换新串: ...

  3. R语言使用str_replace函数和str_replace_all函数替换字符串中匹配到的模式:str_replace函数替换第一个匹配到的字符串、str_replace_all函数替换所有匹配到的

    R语言使用str_replace函数和str_replace_all函数替换字符串中匹配到的模式:str_replace函数替换第一个匹配到的字符串.str_replace_all函数替换所有匹配到的 ...

  4. C语言用‘%20‘替换字符串中的所有空格的算法(附完整源码)

    C语言用'%20'替换字符串中的所有空格的算法 C语言用'%20'替换字符串中的所有空格的算法完整源码(定义,实现,main函数测试) C语言用'%20'替换字符串中的所有空格的算法完整源码(定义,实 ...

  5. .bat批处理(十一):替换字符串中包含百分号%的子串

    文章目录 前言 问题示例 解决方法 示例代码 运行结果 总结 前言 今天这篇总结是之前批处理替换字符串的延伸问题,同样来源于读者的提问,要处理的问题是被替换的子串中如果有百分号 % 要怎样替换,因为 ...

  6. python中替换字符串中字符_python替换字符串中的某个字符

    python_split_strip_replace使用方法 使用python时会经常要对字符串做一些处理,比如:分割字符串.去掉空格.替换字符串 中的某个字符等,下面介绍下这几个功能的使用. 一.  ...

  7. 字符串之替换字符串中连续出现的指定字符串

    题目: 字符串之替换字符串中连续出现的指定字符串 给定3个字符串str from to已知from字符串无重复字符,把str中所有from的子串全都替换成to字符串,连续出现from只需要换成一个to ...

  8. 7-29 删除字符串中的子串

    PTA-7-29 删除字符串中的子串 输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2. 输入格式: 输入在2行中分别给出不超过80个字符长度的.以回车结束 ...

  9. 用‘+‘替换字符串中的所有空格[复制]

    本文翻译自:Replace all spaces in a string with '+' [duplicate] This question already has an answer here: ...

最新文章

  1. 【教程】新手如何制作简单MAD和AMV,学不会那都是时辰
  2. 猿类如何捕获少女心--难以琢磨的try-catch
  3. python异常处理及内置模块
  4. 数据结构-队列之循环队列
  5. net能和python结合吗_如何不用安装python就能在.NET里调用Python库
  6. (pytorch-深度学习系列)pytorch实现线性回归
  7. SQL优化:紧急情况下提高SQL性能竟是这样实现的!(文中有惊喜)
  8. 二叉树的遍历实验报告C语言,二叉树的建立与遍历实验报告(c语言编写,附源代码)...
  9. 不是我发现了美,只不过这个世界本身就很美。记快乐的今年生日。
  10. linux开机时驱动的加载流程
  11. Linux 内核和 Windows 内核有什么区别?
  12. Ubuntu下利用python实现自动打卡系统全过程
  13. Python漫画下载器
  14. 全国省份及其对应的城市字典
  15. 好压 v6.3.11130 绿色纯净版(编程必备软件)
  16. javascript数字转汉字中文数字
  17. 【python】MAC安装openCV人脸识别
  18. 关于数学分支与数学家的一个故事
  19. Business Transaction Events BTE 增强
  20. 用 Python 翻译语言

热门文章

  1. android充当server服务器
  2. 创建一个抽象类动物类以及以下几个接口:进食的接口、睡觉的接口、思考的接口、说话的接口。分别定义猫类、人类、鸟类继承动物类并选择实现上述的接口,并创建实例验证。
  3. Sharding-Sphere 的应用性能监控实践
  4. R统计绘图-VPA(变差分解分析)
  5. LeetCode 587. 安装栅栏【凸包算法】【C++】【很多坑】
  6. Codeforces1562 C. Rings(构造)
  7. VisionPro之脚本
  8. 深度学习是什么?应用在哪些方向?
  9. php微博cookie获取,python模拟新浪微博登陆之获取cookies-Go语言中文社区
  10. 美丽乡村可行性研究报告