使用C++编写的查找字符子串并替换

来源:互联网 发布:协同创新网络 编辑:程序博客网 时间:2024/05/20 18:40
#include <iostream>#include<cstring>using namespace std;char* replace(const char* str,const char* sub1,const char* sub2,char* output){char* pOutput=NULL;const char* pStr=NULL;int lenSub1 = strlen(sub1);int lenSub2 = strlen(sub2);pOutput=output;pStr=str;while(*pStr!=0){pStr=strstr(pStr,sub1); //strstr是个好函数啊,要常用啊if(NULL!=pStr){memcpy(pOutput,str,pStr-str);pOutput+=pStr-str;memcpy(pOutput,sub2,lenSub2);pOutput+=lenSub2;pStr+=lenSub1;str=pStr;}else break;}*pOutput='\0';if(*str!='\0'){strcpy(pOutput,str);}return output;}int main(){char str[50]="";char sub1[10]="";char sub2[10]="";char output[100]="";cout<<"str:";cin>>str;cout<<"sub1:";cin>>sub1;cout<<"sub2:";cin>>sub2;cout<<replace(str,sub1,sub2,output)<<endl;return 0;}

原创粉丝点击