C语言字符串查找替换

void str_run(char *primary_str, char *lookup_str, char* replace_str, char* new_str)

{        //功能是在primary_str中查找lookup_str, 找到lookup_str则替换成replace_str, 否则不替换, 返回新的new_str

int cn = 0, cL = 0;

char  *pPstr = primary_str, *pLstr = lookup_str, *pRstr = replace_str, *pNew_str = new_str;

for( ; pLstr[cL] != '\0' ; ++cL);        //查找字符串pLstr的长度cL        

while(*pPstr != '\0')

{        //在primary_str中查找lookup_str, 记录匹配的长度cn

for(pLstr = lookup_str, cn = 0 ; (*(pPstr+cn) == *pLstr) && *pLstr != '\0' ; ++cn, ++pLstr);

if(cn == cL)        //如果在primary_str中找到lookup_str, 则将lookup_str替换成replace_str

for(pRstr = replace_str, pPstr = pPstr+cL ; *pRstr != '\0' ; *pNew_str++ = *pRstr++);

else        //如果没有找到lookup_str,则不替换

*pNew_str++ = *pPstr++;

}

}

本人擅长写特殊函数,优化程序代码,但是现在还是新人,就是思路跟别人不一样而已!

你可能感兴趣的:(编程源码)