注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

逍遥子 曰:

得失失得 何必患得患失 舍得得舍 不妨不舍不得

 
 
 

日志

 
 

c字符串替换函数[原]  

2013-03-14 10:10:02|  分类: C/C++ |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
/****************************************************************************
* 函数名:_ReplaceStr
* 作者:
* 日期:
* 输入参数:char* sSrc 原字符串
* char* sMatchStr 特征字符串
* char* sReplaceStr 将要替换的字符串
* bool bReplaceAll 为true时替换所有子串,为false时只替换第一个匹配的子串
* 输出参数:无
* 返回值:int类型
* 0:成功
* -1:传入的字符串指针为空
* -2:没有找到匹配的字符串
* 功能: 将字符串sSrc中的所有sMatchStr子串全部替换为sReplaceStr字符串
*****************************************************************************/
int _ReplaceStr(char *sSrc/*IN OUT*/, char *sMatchStr/*IN*/, char *sReplaceStr/*IN*/, bool bReplaceAll/*IN*/)
{
if(NULL == sSrc || NULL == sMatchStr ||NULL == sReplaceStr )
return -1;
int StringLen;
char caNewString[DEFAULT_BUF_LEN];

char *FindPos = strstr(sSrc, sMatchStr);
if(NULL == FindPos)
return -2;

while(FindPos)
{
memset(caNewString, 0, sizeof(caNewString));
StringLen = FindPos - sSrc;
strncpy(caNewString, sSrc, StringLen);
strcat(caNewString, sReplaceStr);
strcat(caNewString, FindPos + strlen(sMatchStr));
strcpy(sSrc, caNewString);
if(!bReplaceAll)
break;
FindPos = strstr(sSrc, sMatchStr);
}

return 0;
}


上述函数改写自某位前辈所写的字符串替换函数
  评论这张
 
阅读(388)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018