इस प्रोग्राम में, हमें तीन स्ट्रिंग्स txt, oldword, newword दी गई हैं। हमारा कार्य एक C प्रोग्राम बनाना है जो टेक्स्ट में एक शब्द को दूसरे दिए गए शब्द से बदल दे।
प्रोग्राम स्ट्रिंग में oldword की सभी घटनाओं को खोजेगा और इसे newword से बदल देगा।
आइए एक उदाहरण लेकर समस्या को समझते हैं -
इनपुट
text = "I am learning programming" oldword = "learning" newword = "practicing"
आउटपुट
"I am practicing programming"
इस समस्या को हल करने के लिए, हम पहले स्ट्रिंग में oldword की घटनाओं की संख्या ढूंढेंगे और फिर एक नई स्ट्रिंग बनाएंगे जो प्रतिस्थापित शब्दों के साथ टेक्स्ट को संग्रहीत करेगी।
टेक्स्ट में एक शब्द को दूसरे दिए गए शब्द से बदलने के लिए C प्रोग्राम
// टेक्स्ट में एक शब्द को दूसरे दिए गए शब्द से बदलने के लिए C प्रोग्राम
उदाहरण
#include <stdio.h> #include <string.h> #include <stdlib.h> void replaceWordInText(const char *text, const char *oldWord, const char *newWord) { int i = 0, cnt = 0; int len1 = strlen(newWord); int len2 = strlen(oldWord); for (i = 0; text[i] != '\0'; i++) { if (strstr(&text[i], oldWord) == &text[i]) { cnt++; i += len2 - 1; } } char *newString = (char *)malloc(i + cnt * (len1 - len2) + 1); i = 0; while (*text) { if (strstr(text, oldWord) == text) { strcpy(&newString[i], newWord); i += len1; text += len2; } else newString[i++] = *text++; } printf("नई स्ट्रिंग: %s\n", newString); } int main() { char str[] = "I am learning programming"; char c[] = "learning"; char d[] = "practicing"; char *result = NULL; printf("मूल स्ट्रिंग: %s\n", str); replaceWordInText(str, c, d); return 0; } आउटपुट
मूल स्ट्रिंग: I am learning programming नई स्ट्रिंग: I am practicing programming