Tekrar eden kelimeleri silmek C#

Katılım
22 Ocak 2018
Mesajlar
55
Yer
Ankara
Daha fazla  
Cinsiyet
Erkek
Meslek
Öğrenci
Merhaba arkadaşlar. Şöyle bir sorunum var. İstediğim olay şu; kullanıcı bir cümle girecek. Eğer bu cümle "WE" ile başlıyorsa ilk "THE" kelimesi silinecek. Eğer "We" ile başlamıyorsa tüm "THE" kelimeleri silinecek. Örneğin: Girilen Cümle: "We lost the game and the bet." cümlesi ekrana "We lost game and the bet" olarak çıkacak. Ancak "You lost the game and the bet." cümlesi ekrana "You lost game and bet" olarak çıkacak. Benim yazdığım kodda ilk "THE" kelimesini silme işlemini yapıyor. Ancak ikinci "THE" kelimesini silmiyor. Bu problemi nasıl giderebilirim? Kodum şu şekilde;

#include<stdio.h>
#include<string.h>
int main(){

char sent[100];
int i;

printf("Enter a sentence: ");
gets(sent);

if(sent[0] == 'w' && sent[1] == 'e'){
for (i=2;i<strlen(sent);i++){
if(sent == 't' && sent[i+1] == 'h' && sent[i+2] == 'e' && sent[i+3] == ' '){
while( i < strlen(sent)){
sent = sent[i+1];
sent = sent[i+2];
sent = sent[i+3];
sent = sent[i+4];
i++;
}
printf("\n%s",sent);
}

}
}
else
for (i=0;i<strlen(sent);i++){
if(sent == 't' && sent[i+1] == 'h' && sent[i+2] == 'e' && sent[i+3] == ' '){
while( i < strlen(sent)){
sent = sent[i+1];
sent = sent[i+2];
sent = sent[i+3];
sent = sent[i+4];
i++;
}
printf("\n%s",sent);
}

}

return 0;
}
 
Son düzenleyen: Moderatör:
Öncelikle bu kod C# değil. O kısımı hallettikten sonra diğer problemleri çözmeye başlayabiliriz.
Eğer C# kullanabiliyorsanız Regex'leri araştırın. Pattern ile bahsettiğiniz durumları yakalayabilir kolayca düzenleyebilirsiniz. char'ları tek tek kontrol etmek zorunda kalmazsınız.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…