• 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''
    char *p=strDes;
    while(*strSrc!='')
    {
    *p++=*strSrc++;
    }
    *p='';
    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("--原先-- %s,size=%d ",abc,strlen(abc));

    abc=DelStr(abc,matchStr1);
    printf("--现在-- %s,size=%d ",abc,strlen(abc));
    return 0;
    }

  • 相关阅读:
    jmeter接口测试--循环获取网页中的html链接
    jmeter接口测试--文件下载
    jmeter接口测试--文件上传
    微信群发消息小工具 v1.0-可定时发送
    xmrig 源码转为vs2015项目--总结
    nginx---max_connections、meme.type、default_type
    字典 dict
    元祖 tuple
    列表list
    字符串常用方法
  • 原文地址:https://www.cnblogs.com/aspirant/p/3576306.html
Copyright © 2020-2023  润新知