1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
char * regsub(const char *CH1,char *SUJ,const char *CH2)
{
char *FIN;
int I;
int J;
int K;
int TROUVE;
TROUVE=0;
for (I=0; SUJ[I] && !TROUVE; I++)
if (SUJ[I]==CH1[0])
{
for (J=1; CH1[J] && (CH1[J]==SUJ[I+J]); J++)
;
if (CH1[J]=='\0') TROUVE=1;
}
if (TROUVE)
{
I--;
for (K=0; SUJ[K+I+J]; K++)
FIN[K]=SUJ[K+I+J];
FIN[K]='\0';
for (K=0; CH2[K]; K++,I++)
SUJ[I]=CH2[K];
for (K=0; FIN[K]; K++,I++)
SUJ[I]=FIN[K];
SUJ[I]='\0';
}
return SUJ;
}
main()
{
char * suj2;
sprintf(suj2,"une fonction majoree et minoree est une fonction bornee");
suj2=regsub("fonction",suj2,"suite");
} |
Partager