1. #include "stdafx.h" //linux 底下要去掉这一行
  2. #include <stdio.h>
  3. #include<stdlib.h>
  4. #include <string.h>
  5. #include <malloc.h>
  6. char matchStr1[]="111,aaa,ddd";
  7. static char *strcpyNew(char *strDes, char *strSrc)
  8. {
  9. if(NULL==strSrc) return strDes;
  10. strDes=(char *)malloc(strlen(strSrc)+1); //assign more 1 space to save'\0'
  11. char *p=strDes;
  12. while(*strSrc!='\0')
  13. {
  14. *p++=*strSrc++;
  15. }
  16. *p='\0';
  17. return strDes;
  18. }
  19. static char * DelStr(char *sSrc, char *sMatchStr)
  20. {
  21.  
  22. if(strcmp(sMatchStr,"")==0||(NULL==sSrc)||(sSrc==""))return sSrc;
  23. char *seps =",";
  24. char *token = strtok(sMatchStr, seps);
  25. while(token)
  26. {
  27. char *FindPos = strstr(sSrc, token);
  28. if(FindPos)
  29. while(FindPos)
  30. {
  31. int i;
  32. int newLen=strlen(sSrc);
  33. int leftLen=FindPos - sSrc;
  34. char *p=(char *)malloc(newLen);
  35. for(i=0;i<leftLen;i++)
  36. {
  37. p[i]=sSrc[i];
  38. }
  39. for(i=leftLen;i<newLen;i++)
  40. {
  41. p[i]=sSrc[i+strlen(token)];
  42. }
  43. sSrc= strcpyNew(sSrc, p);
  44. free(p);
  45. FindPos = strstr(sSrc, token);
  46. }
  47. token = strtok(NULL, seps);
  48. }
  49. return sSrc;
  50. }
  51. int main(int argc, char* argv[])
  52. {
  53. char * abc="333 333 aaa aaa ddd 444 aaa 666";
  54. printf("--原先--\n%s,size=%d\n",abc,strlen(abc));
  55.  
  56. abc=DelStr(abc,matchStr1);
  57. printf("--现在--\n%s,size=%d\n",abc,strlen(abc));
  58. return 0;
  59. }
  60.  

C 替换字符方法--1的更多相关文章

  1. C 替换字符方法

    // 444.cpp : Defines the entry point for the console application. // #include "stdafx.h" # ...

  2. JAVA中替换字符的方法replace和replaceAll 区别

    replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSe ...

  3. php中按指定标识及长度替换字符的方法代码

    /** * 按指定标识及长度替换字符 * @param $str * @param int $start 开始的位数 * @param int $end 后面保留的位数 * @param string ...

  4. JS Replace() 全部替换字符的用法

    好久不写js了,今早遇到替换字符的,就浪费了点时间,由此,要记录下来.replace()方法:楼主有个字符串,需要替换掉其中的一些字母,如: var test='123helo123boy123hi' ...

  5. python字符串内容替换的方法(转载)

    python字符串内容替换的方法 时间:2016-03-10 06:30:46来源:网络 导读:python字符串内容替换的方法,包括单个字符替换,使用re正则匹配进行字符串模式查找与替换的方法.   ...

  6. JavaScript 字符串函数 之查找字符方法(一)

    1.JavaScript查找字符方法   首先看一张 有关字符串函数的查找字符的方法图 接下里补充里面的方法说明 2.charAt()     charAt() 方法返回字符串中指定位置的字符 语法 ...

  7. [转载]js正则表达式/replace替换变量方法

    原文地址:http://www.blogjava.net/pingpang/archive/2012/08/12/385342.html JavaScript正则实战(会根据最近写的不断更新) 1.j ...

  8. js正则表达式/replace替换变量方法

    转自:http://www.blogjava.net/pingpang/archive/2012/08/12/385342.html 1. javascript 正则对象替换创建和用法:/patter ...

  9. Linux下vi替换字符命令操作实例

    在Linux下的开发中,经常涉及到对文件里的字符进行处理,当中,对字符的替换操作也是非常的频繁. 本文以一个实际的文件为例,具体介绍了Linux下经常使用的vi替换字符命令,为相关的开发工作提供给了參 ...

随机推荐

  1. 第五天 loadmore

    mutating func loadFresh(completion: (result: APIResult<DeserializedType>) -> ()) -> Canc ...

  2. weapp微信小程序初探demo

    https://github.com/donglegend/weapp-demo 参考文档开发工具安装微信weapp API git项目源码微信小程序 demo效果展示效果预览

  3. MySQL的InnoDB索引原理详解 (转)

    摘要: 本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节. InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档).本着高效学习的目的,本 ...

  4. iOS开发——网络篇——JSON和XML,NSJSONSerialization ,NSXMLParser(XML解析器),NSXMLParserDelegate,MJExtension (字典转模型),GDataXML(三方框架解析XML)

    一.JSON 1.JSON简介什么是JSONJSON是一种轻量级的数据格式,一般用于数据交互服务器返回给客户端的数据,一般都是JSON格式或者XML格式(文件下载除外) JSON的格式很像OC中的字典 ...

  5. iOS开发——UI基础-自定义构造方法,layoutSubviews,Xib文件,利用Xib自定义View

    一.自定义构造方法 有时候需要快速创建对象,可以自定义构造方法 + (instancetype)shopView { return [[self alloc] init]; } - (instance ...

  6. C++虚函数、虚继承、对象内存模型(转)

    参考:http://blog.csdn.net/hxz_qlh/article/details/14633361 需要注意的是虚继承.多重继承时类的大小.

  7. CCP浅谈

    说明 如果想详细了解CCP,可以下载AN-AMC-1-102_Introduction_to_CCP.pdf或者ccp211.pdf 本文不涉及到专业的知识讲解,如果想查看更加专业的知识可以选择看完以 ...

  8. Java文件操作工具类(复制、删除、重命名、创建路径)

    import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import ...

  9. 如何用Wireshark捕获USB数据?

    现在越来越多的电子设备采用USB接口进行通讯,通讯标准也在逐步提高.那么,我们就会好奇这些设备是如何工作的?而无论你是一个硬件黑客,业余爱好者或者只是对它有一点兴趣的,USB对我们都是具有挑战性的. ...

  10. 9.1---上楼梯(CC150)

    注意:错误主要在溢出问题上.所以不设置int,而是long. public static int countWays(int n){ if(n == 1) return 1; if(n == 2) r ...