c语言字符串替换函数StrReplace(char strRes[],char from[], char to[])可直接使用

本文介绍了一个简单的字符串替换函数的实现方法,该函数可以将原始字符串中的特定子串替换为另一个字符串,仅替换首次出现的位置。文章提供了完整的代码示例,并展示了如何调用此函数。

将如下函数添加到文件中,可直接调用。

StrReplace(char strRes[],char from[], char to[])

@strRes[] :原始字符串。

@rom[]:需要替换的字符,串只替换第一次出现的位置。

@to[]:需要替换成什么字符串。

成功返回:1

失败返回:0

#include <malloc.h>
#include<netinet/in.h>  
#include <net/if.h>
#include <sys/ioctl.h>

int StrReplace(char strRes[],char from[], char to[])
 {
    int flag=0;
	char *Ptr = NULL;
    char *middle_flag = strstr(strRes, from);
	if(middle_flag == NULL)
	{
		return flag;
	}
    
    int len = strlen(middle_flag);
    Ptr = (char *)malloc(len * sizeof(char));
    if (NULL == Ptr)
    {
        return flag;
    }
    strcpy(Ptr, middle_flag + (strlen(from)));
    if (middle_flag != NULL)
    {
        /* code */
        *middle_flag = '\0';
        strcat(strRes, to);
        strcat(strRes, Ptr);
        free(Ptr);
        flag = 1;
    }
    return flag;
 }

int main()
{
    char *str = "this is one";
    if(StrReplace(str,"one","two"))
    {
     printf("%s",str);
    }
}

@print:this is two

输出this is two

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值