C 替换字符方法--1
#include "stdafx.h" //linux 底下要去掉这一行
#include <stdio.h>
#include<stdlib.h>
#include <string.h>
#include <malloc.h>
char matchStr1[]="111,aaa,ddd";
static char *strcpyNew(char *strDes, char *strSrc)
{
if(NULL==strSrc) return strDes;
strDes=(char *)malloc(strlen(strSrc)+1); //assign more 1 space to save'\0'
char *p=strDes;
while(*strSrc!='\0')
{
*p++=*strSrc++;
}
*p='\0';
return strDes;
}
static char * DelStr(char *sSrc, char *sMatchStr)
{ if(strcmp(sMatchStr,"")==0||(NULL==sSrc)||(sSrc==""))return sSrc;
char *seps =",";
char *token = strtok(sMatchStr, seps);
while(token)
{
char *FindPos = strstr(sSrc, token);
if(FindPos)
while(FindPos)
{
int i;
int newLen=strlen(sSrc);
int leftLen=FindPos - sSrc;
char *p=(char *)malloc(newLen);
for(i=0;i<leftLen;i++)
{
p[i]=sSrc[i];
}
for(i=leftLen;i<newLen;i++)
{
p[i]=sSrc[i+strlen(token)];
}
sSrc= strcpyNew(sSrc, p);
free(p);
FindPos = strstr(sSrc, token);
}
token = strtok(NULL, seps);
}
return sSrc;
}
int main(int argc, char* argv[])
{
char * abc="333 333 aaa aaa ddd 444 aaa 666";
printf("--原先--\n%s,size=%d\n",abc,strlen(abc)); abc=DelStr(abc,matchStr1);
printf("--现在--\n%s,size=%d\n",abc,strlen(abc));
return 0;
}
C 替换字符方法--1的更多相关文章
- C 替换字符方法
// 444.cpp : Defines the entry point for the console application. // #include "stdafx.h" # ...
- JAVA中替换字符的方法replace和replaceAll 区别
replace和replaceAll是JAVA中常用的替换字符的方法,它们的区别是:1)replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换(CharSe ...
- php中按指定标识及长度替换字符的方法代码
/** * 按指定标识及长度替换字符 * @param $str * @param int $start 开始的位数 * @param int $end 后面保留的位数 * @param string ...
- JS Replace() 全部替换字符的用法
好久不写js了,今早遇到替换字符的,就浪费了点时间,由此,要记录下来.replace()方法:楼主有个字符串,需要替换掉其中的一些字母,如: var test='123helo123boy123hi' ...
- python字符串内容替换的方法(转载)
python字符串内容替换的方法 时间:2016-03-10 06:30:46来源:网络 导读:python字符串内容替换的方法,包括单个字符替换,使用re正则匹配进行字符串模式查找与替换的方法. ...
- JavaScript 字符串函数 之查找字符方法(一)
1.JavaScript查找字符方法 首先看一张 有关字符串函数的查找字符的方法图 接下里补充里面的方法说明 2.charAt() charAt() 方法返回字符串中指定位置的字符 语法 ...
- [转载]js正则表达式/replace替换变量方法
原文地址:http://www.blogjava.net/pingpang/archive/2012/08/12/385342.html JavaScript正则实战(会根据最近写的不断更新) 1.j ...
- js正则表达式/replace替换变量方法
转自:http://www.blogjava.net/pingpang/archive/2012/08/12/385342.html 1. javascript 正则对象替换创建和用法:/patter ...
- Linux下vi替换字符命令操作实例
在Linux下的开发中,经常涉及到对文件里的字符进行处理,当中,对字符的替换操作也是非常的频繁. 本文以一个实际的文件为例,具体介绍了Linux下经常使用的vi替换字符命令,为相关的开发工作提供给了參 ...
随机推荐
- python 多线程就这么简单(转)
多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ...
- Android开发学习笔记--计时器的应用实例
为了了解安卓计时器的用法,写了一个秒表的应用,正是这个秒表,让我对Android应用的速度大跌眼镜,我设置了一个计时器,10ms更新一次显示的时间,然后更标准的时间一比较发现,跑10s就有一秒的时间误 ...
- mac 系统通用快捷键(mac 下的应用多数会往这些标准看齐)(转:http://yang3wei.github.io/blog/2013/02/08/chen-ni-yu-mac-chen-ni-yu-xcode/)
command + w: 关闭当前窗口 command + q: 退出程序 (Google Chrome 有点奇葩,按下之后还需要hold 那么一小会儿才能退出) command + m: 最小化当前 ...
- Oracle sysdate 时间加减
加法 select sysdate,add_months(sysdate,12) from dual; --加1年 select sysdate,add_months(sysdate,1 ...
- 将 JAR 转为 EXE – EXE4J 的使用教程(第一期)(转载)
http://www.iteknical.com/convert-jar-to-exe-phase-i-exe4j-tutorial/
- ZJOIDay2T1 BB题解
讲道理我是调不出来了... 考虑对序列按下标维护每个节点最后的树. 那么 改操作点 - 把一段连续的节点改父亲 加点/删点(注意拆成两个操作了) 插儿子 那么用seg维护一下下标, 用ETT维护Dep ...
- 【MavenWeb】初探:创建一个Maven Web项目
第一步:创建一个Simple的Maven项目 直接点下一步,把name上面的几个部分填写好,直接Finish即可. 就可以看到如下的结构: 注意点1:如果按照网上的其他一些做法来创建,你会发现少了sr ...
- iOS 8 Auto Layout界面自动布局系列2-使用Xcode的Interface Builder添加布局约束
http://blog.csdn.net/pucker/article/details/41843511 上一篇文章<iOS 8界面自动布局系列-1>简要介绍了iOS界面布局方式的前世今生 ...
- zaqar项目介绍
Zaqar is a multi-tenant cloud messaging and notification service for web and mobile developers. It c ...
- 【leetcode】Text Justification
Text Justification Given an array of words and a length L, format the text such that each line has e ...