Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

C++ में शब्दों को एस्टरिस्क से बदलना


इस प्रोग्राम का उद्देश्य C++ प्रोग्रामिंग कोड का उपयोग करके किसी स्ट्रिंग में किसी विशेष शब्द को एस्टरिस्क (*) से बदलना है। इस लक्ष्य को प्राप्त करने में वेक्टर और स्ट्रिंग क्लास के आवश्यक फंक्शन महत्वपूर्ण भूमिका निभाते हैं। एल्गोरिदम निम्नलिखित है:

एल्गोरिदम

शुरुआत 
चरण-1: स्ट्रिंग इनपुट करें 
चरण-2: स्ट्रिंग को शब्दों में विभाजित करें और ऐरे लिस्ट में स्टोर करें 
चरण-3: लंबाई तक लूप चलाएं और एस्टरिस्क को एक वेरिएबल में रखें 
चरण-4: ऐरे को फोर-ईच लूप से ट्रैवर्स करें और स्ट्रिंग की तुलना बदलने वाले शब्द से करें 
चरण-5: प्रिंट करें 
अंत

अब, उपरोक्त एल्गोरिदम के आधार पर निम्नलिखित कोड लिखा गया है। यहां, स्ट्रिंग को विभाजित करने के लिए strtok() मेथड का उपयोग किया गया है जो स्ट्रिंग को विभाजित करके वेक्टर क्लास टाइप की ऐरे लिस्ट लौटाता है।

उदाहरण

#include <cstring> 
#include <iostream> 
#include <vector> 
#include <string.h> 

// स्ट्रिंग विभाजित करने का मेथड 
std::vector<std::string> split(std::string str, std::string sep) { 
    char* cstr = const_cast<char*>(str.c_str()); 
    char* current; 
    std::vector<std::string> arr; 
    current = strtok(cstr, sep.c_str()); 
    while (current != NULL) { 
        arr.push_back(current); 
        current = strtok(NULL, sep.c_str()); 
    } 
    return arr; 
} 

int main() { 
    std::vector<std::string> word_list; 
    std::cout << "string before replace::" << "Hello ajay yadav ! you ajay you are star" << std::endl; 
    std::cout << "word to be replaced::" << "ajay" << std::endl; 
    word_list = split("Hello ajay yadav ! you ajay you are star", " "); 
    std::string result = ""; 
    
    // सेंसर बनाने के लिए एस्टरिस्क 
    // सेंसर शब्द की लंबाई के बराबर "*" टेक्स्ट 
    std::string stars = ""; 
    std::string word = "ajay"; 
    for (int i = 0; i < word.length(); i++) 
        stars += '*'; 
    
    // निकाले गए शब्दों की लिस्ट पर पुनरावृति 
    int index = 0; 
    for (std::string i : word_list) { 
        if (i.compare(word) == 0) 
            // सेंसर किए गए शब्द को 
            // बने एस्टरिस्क सेंसर में बदलना 
            word_list[index] = stars; 
        index++; 
    } 
    
    // शब्दों को जोड़ना 
    for (std::string i : word_list) { 
        result += i + ' '; 
    } 
    std::cout << "output::" << result; 
    return 0; 
}

ऊपर दिए गए कोड में देखा जा सकता है कि सभी स्ट्रिंग ऑपरेशन कोड retrieveChar() मेथड में बंडल किए गए हैं, जिसे बाद में प्रोग्राम के main() एक्जीक्यूशन में कॉल किया जाता है।

आउटपुट

String before replace::Hello ajay yadav ! you ajay you are star 
Word to be replaced::ajay 
Output::Hello **** yadav ! you **** you are star

  1. - C++ में std::string से स्पेस हटाना

    इस प्रोग्राम में हम देखेंगे कि C++ में std::string से स्पेस कैसे हटाएं। इसे हटाने के लिए हम remove() फंक्शन का उपयोग करेंगे। इस remove() फंक्शन के साथ यह इटरेटर की शुरुआत और अंत लेता है, फिर तीसरा आर्गुमेंट लेता है जिसे उस इटरेटर ऑब्जेक्ट से हटाया जाएगा। इनपुट: एक स्ट्रिंग This is C++ Programming L

  1. - C++ में कॉमा-डिलिमिटेड std::string को पार्स करना

    इस प्रोग्राम में हम देखेंगे कि C++ में कॉमा-डिलिमिटेड स्ट्रिंग को कैसे पार्स करें। हम एक स्ट्रिंग रखेंगे जहां कुछ टेक्स्ट मौजूद हैं, और वे कॉमा द्वारा डिलिमिटेड हैं। इस प्रोग्राम को 실행 करने के बाद, यह उन स्ट्रिंग्स को एक वेक्टर टाइप ऑब्जेक्ट में विभाजित कर देगा। उन्हें विभाजित करने के लिए हम getlin

  1. - C++ में सिंगल कैरेक्टर को स्ट्रिंग में कैसे बदलें?

    सिंगल कैरेक्टर को स्ट्रिंग में बदलने के कई तरीके हैं। निम्नलिखित उदाहरण में, उनमें से कुछ का उपयोग कैरेक्टर को स्ट्रिंग में बदलने के लिए किया गया है। उदाहरण #include <iostream> #include <string> #include <sstream> int main() { char c = m; std::string s(1, c); std::cou