首页 > 代码库 > 实现字符串中子字符串的替换

实现字符串中子字符串的替换

 

//使用C语言实现字符串中子字符串的替换//描述:编写一个字符串替换函数,如函数名为 StrReplace(char* strSrc, char* strFind, char* strReplace),//strSrc为原字符串,strFind是待替换的字符串,strReplace为替换字符串。//举个直观的例子吧,如:“ABCDEFGHIJKLMNOPQRSTUVWXYZ”这个字符串,把其中的“RST”替换为“ggg”这个字符串,//结果就变成了:ABCDEFGHIJKLMNOPQgggUVWXYZ#include<stdio.h>#include<string.h>void StrReplace(char* strSrc, char* strFind, char* strReplace){    int i,j,k,m;    int lengthSrc,lengthFind;    lengthSrc = strlen(strSrc);    lengthFind = strlen(strFind);    for(i=0;i<lengthSrc;)    {        j = 0;        if(strSrc[i] == strFind[j])        {            do            {                i++;j++;            }while((j < lengthFind) && (strSrc[i] == strFind[j]));            if(j == lengthFind)            {                for(k=i-lengthFind,m=0;k<i;k++,m++)                {                    strSrc[k] = strReplace[m];                }            }        }        else        {            i++;        }    }}int main(){    char strSrc[255],strFind[255],strReplace[255];    gets(strSrc);    gets(strFind);    gets(strReplace);        StrReplace(strSrc,strFind,strReplace);    puts(strSrc);    return 0;}