
25.04.2009, 16:31
|
|
Познавший АНТИЧАТ
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
Юзай поиск в инете
Для ленивых вот:
Код:
// Функция заменяет в строке Src подстроку Str1 на Str2
char* Replace(char* Src,char* Str1, char* Str2)
{
int cStr1=0,cStr2=0,i;
char* buffer;
buffer = HeapAlloc(GetProcessHeap(),HEAP_ZERO_MEMORY,lstrlen(Src)*2);
while (Str1[cStr1]) cStr1++; // считаем размер
while (Str2[cStr2]) cStr2++; // строк, можно и через lstrlen
i = InStr(&Src[0],&Str1[0]);
while(i != 0)
{
lstrcpyn(&buffer[lstrlen(buffer)],&Src[0],i);
lstrcat(&buffer[0],&Str2[0]);
lstrcpy(&Src[0],&Src[i+cStr1-1]);
i = InStr(&Src[0],&Str1[0]);
}
lstrcat(&buffer[0],&Src[0]);
lstrcpy(&Src[0],&buffer[0]);
HeapFree(GetProcessHeap(),HEAP_NO_SERIALIZE,buffer);
return Src;
}
|
|
|