C语言字符串查找替换

void str_run(char *primary_str, char *lookup_str, char* replace_str, char* new_str)

{        //功能是在primary_str中查找lookup_str, 找到lookup_str则替换成replace_str, 否则不替换, 返回新的new_str

int cn = 0, cL = 0;

char  *pPstr = primary_str, *pLstr = lookup_str, *pRstr = replace_str, *pNew_str = new_str;

for( ; pLstr[cL] != '\0' ; ++cL);        //查找字符串pLstr的长度cL        

while(*pPstr != '\0')

{        //在primary_str中查找lookup_str, 记录匹配的长度cn

for(pLstr = lookup_str, cn = 0 ; (*(pPstr+cn) == *pLstr) && *pLstr != '\0' ; ++cn, ++pLstr);

if(cn == cL)        //如果在primary_str中找到lookup_str, 则将lookup_str替换成replace_str

for(pRstr = replace_str, pPstr = pPstr+cL ; *pRstr != '\0' ; *pNew_str++ = *pRstr++);

else        //如果没有找到lookup_str,则不替换

*pNew_str++ = *pPstr++;

}

}

本人擅长写特殊函数,优化程序代码,但是现在还是新人,就是思路跟别人不一样而已!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值