इस लेख में, हम किसी दिए गए शब्द को किसी दिए गए स्ट्रिंग से हटाने की समस्या को हल करेंगे। उदाहरण के लिए -
Input : str = “remove a given word ”, word = “ remove ” Output : “ a given word ” Input : str = “ god is everywhere ”, word = “ is ” Output : “ god everywhere ”
समाधान खोजने के लिए दृष्टिकोण
उदाहरण के लिए, हम किसी शब्द को स्ट्रिंग से हटाने के लिए एक सरल दृष्टिकोण का उपयोग कर सकते हैं।
- सबसे पहले, दिए गए स्ट्रिंग को 2-डी मैट्रिक्स रूप में रखें, जहां प्रत्येक शब्द प्रत्येक पंक्ति में संग्रहीत होता है।
- मैट्रिक्स में शब्द ढूंढें और उस पंक्ति को रिक्त वर्ण से बदलें जहां शब्द है।
- आखिरकार, क्रमित स्ट्रिंग को प्रिंट करें।
उदाहरण
#include <bits/stdc++.h> using namespace std; int remove_word (string str, char word[]) { char matrix[10][30]; int i = 0, j = 0, k = 0, len1 = 0, len2 = 0; // putting each word of string into the rows of the 2-D matrix. for (i = 0; str[i] != '\0'; i++) { if (str[i] == ' ') { matrix[k][j] = '\0'; k++; j = 0; }else{ matrix[k][j] = str[i]; j++; } } // looking for the word in a given string and putting a null character when the word is found. matrix[k][j] = '\0'; j = 0; for (i = 0; i < k + 1; i++) { if (strcmp (matrix[i], word) == 0) { matrix[i][j] = '\0'; } } j = 0; // printing the reordered string. for (i = 0; i < k + 1; i++){ if (matrix[i][j] == '\0') continue; else cout << matrix[i] << " "; } cout << "\n"; } int main () { char str1[] = "remove a given word", word1[] = "remove"; char str2[] = "god is everywhere", word2[]="is"; // calling a function to remove a word from a string and print it. remove_word (str1, word1); remove_word (str2, word2); return 0; }
आउटपुट
a given word god everywhere
उपरोक्त कोड की व्याख्या
- कुछ मानों के साथ स्ट्रिंग और सरणी को प्रारंभ करना और दिए गए शब्द को हटाने के लिए कॉलिंग फ़ंक्शन।
- एक लूप का उपयोग करके स्ट्रिंग के प्रत्येक शब्द को 2-डी मैट्रिक्स की प्रत्येक पंक्ति में रखना, प्रत्येक वर्ण को प्रत्येक ब्लॉक में तब तक संग्रहीत करना जब तक कि स्थान न मिल जाए।
- strcmp() फ़ंक्शन का उपयोग करके किसी शब्द के साथ स्ट्रिंग की तुलना करना और उस पंक्ति में शून्य मान डालना जहां शब्द पाया जाता है।
- आखिरकार, मैट्रिक्स की प्रत्येक पंक्ति को प्रिंट करके स्ट्रिंग को प्रिंट करना।
निष्कर्ष
इस लेख में एक स्ट्रिंग से किसी दिए गए शब्द को हटाने पर चर्चा की गई जहां हम स्ट्रिंग को 2-डी मैट्रिक्स में संग्रहीत करके समस्या को हल करते हैं और फिर शब्द को शून्य मान से बदल देते हैं। हमने सी ++ कोड का उपयोग करके इस समस्या को हल किया। हालाँकि, हम उसी समस्या को किसी अन्य भाषा जैसे C, Java, Python, आदि का उपयोग करके हल कर सकते हैं। आशा है कि आपको यह लेख मददगार लगा होगा।