《替换字符串中指定字符.docx》由会员分享,可在线阅读,更多相关《替换字符串中指定字符.docx(6页珍藏版)》请在三一办公上搜索。
1、替换字符串中指定字符C语言实现:替换字符串中指定字符 不用多介绍了,可以在LoadRunner里直接使用,挺好的! int ReplaceStr(char* sSrc, char* sMatchStr, char* sReplaceStr) int StringLen; char caNewString64; char* FindPos; FindPos =(char *)strstr(sSrc, sMatchStr); if( (!FindPos) | (!sMatchStr) ) return -1; while( FindPos ) memset(caNewString, 0, size
2、of(caNewString); StringLen = FindPos - sSrc; strncpy(caNewString, sSrc, StringLen); strcat(caNewString, sReplaceStr); strcat(caNewString, FindPos + strlen(sMatchStr); strcpy(sSrc, caNewString); FindPos =(char *)strstr(sSrc, sMatchStr); free(FindPos); return 0; 譬如:ReplaceStr(abcd-efgh-ijklm-nopq,-,);
3、/把字符串中的“-”删除掉! #include #include main int n,i,k; for(n=100;n0;n-) k=sqrt(n); for(i=2;ik) printf(%dn,n); break; #include stdio.h void main int i,j,temp,result=0; printf(input a number:); scanf(%d,&temp); printf(n); for(i=0;i=temp;i+) j=2; while(i%j!=0&j isub) ? (float)strlen(source) / isub* irep+ 1:i
4、source ) * sizeof(char); pc1 = result; /*为pc1依次复制结果串的每个字节作准备*/ while(*source != NULL) /*为检查source与sub是否相等作准备,为pc2,pc3 赋初值*/ pc2 = source; pc3 = sub; /* 出循环的条件是: * *pc2 不等于 *pc3 * pc2 到源串结尾 * pc3 到源串结尾 */ while(*pc2 = *pc3 & *pc3 != NULL & *pc2 != NULL) pc2+, pc3+; Page /* 如果找到了子串,进行以下处理工作*/ if(NULL
5、= *pc3) pc3 = rep; /*将替代串追加到结果串*/ while(*pc3 != NULL) *pc1+ = *pc3+; pc2-; source = pc2; /* 检查 source与sub相等的循环结束后, * pc2 对应的位置是在 sub 中串结束符处。该是源串中下一个位置。 * 将 source 指向其前面一个字符。 */ else /*如果没找到子串,下面复制source所指的字节到结果串*/ *pc1+ = *source; source+; /* 将source向后移一个字符*/ *pc1 = NULL; return result; 以下为测试代码: int main char s1 =abbccdfdcdbbdcd; char s2=dcd; char s3=12345; char *p = replace(s1,s2,s3); printf(source=%s ,s1); puts(s1); printf(sub = %s ,s2); puts(s2); printf(replace string = %s,p); return 0;