c 字符串查找,替换

 1 char * strReplace(char *str, char *oldstr, char * newstr)
 2 {
 3     char *beg = strFind(str, oldstr);
 4     if (!beg)
 5         return str;
 6     int lenStr = strlen(str);
 7     int lenOldstr = strlen(oldstr);
 8     int lenNewstr = strlen(newstr);
 9     memmove(beg + lenNewstr, beg + lenOldstr, lenStr - (beg - str) - lenOldstr + 1);
10     memcpy(beg, newstr, lenNewstr);
11     return str;
12 }
13 
14 char * strFind(char * str, char * sub)
15 {
16     char * psub = sub;
17     char * pstr = str;
18     while (*str){
19         psub = sub;
20         pstr = str;
21         while (*str == *psub && *psub)
22         {
23             ++str;
24             ++psub;
25         }
26         if (!*psub)
27             return pstr;
28         else
29             str = pstr + 1;
30     }
31     return NULL;
32 }

 

转载于:https://www.cnblogs.com/endenvor/p/8119187.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值