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

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


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

उन्हें विभाजित करने के लिए हम getline() फंक्शन का उपयोग कर रहे हैं। इस फंक्शन का बेसिक सिंटैक्स इस प्रकार है:

getline (input_stream, string, delim)

यह फंक्शन इनपुट स्ट्रीम से एक स्ट्रिंग या लाइन पढ़ने के लिए उपयोग किया जाता है।

इनपुट: कुछ स्ट्रिंग्स "ABC,XYZ,Hello,World,25,C++"
आउटपुट: अलग की गई स्ट्रिंग ABC XYZ Hello World 25 C++

एल्गोरिदम

चरण 1: दी गई स्ट्रिंग से स्ट्रीम बनाएं
चरण 2: जब तक स्ट्रीम पूरी न हो
    चरण 2.1: कॉमा से पहले आइटम लें
    चरण 2.2: आइटम को वेक्टर में जोड़ें
चरण 3: वेक्टर लौटाएं

उदाहरण कोड

#include <iostream>
#include <vector>
#include <sstream>
using namespace std;

main() {
    string my_str = "ABC,XYZ,Hello,World,25,C++";
    vector result;
    stringstream s_stream(my_str); // स्ट्रिंग से स्ट्रिंग स्ट्रीम बनाएं
    
    while (s_stream.good()) {
        string substr;
        getline(s_stream, substr, ','); // कॉमा द्वारा डिलिमिटेड पहली स्ट्रिंग प्राप्त करें
        result.push_back(substr);
    }
    
    for (int i = 0; i < result.size(); i++) { // सभी विभाजित स्ट्रिंग्स प्रिंट करें
        cout << result.at(i) << endl;
    }
}

आउटपुट

ABC
XYZ
Hello
World
25
C++

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

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

  1. - C++ में std::string को const char* या char* में कैसे कन्वर्ट करें?

    आप string क्लास के c_str() मेथड का उपयोग करके स्ट्रिंग कंटेंट्स के साथ const char* प्राप्त कर सकते हैं। उदाहरण #include<iostream> using namespace std; int main() {    string x("hello");    const char* ccx = x.c_str();    cout << ccx; } आउटपुट यह

  1. - C++ में स्ट्रिंग को टोकनाइज़ कैसे करें?

    पहला तरीका शब्दों को स्पेस से अलग करके पढ़ने के लिए stringstream का उपयोग करना है। यह थोड़ा सीमित है लेकिन अगर आप उचित चेक प्रदान करते हैं तो यह कार्य काफी अच्छी तरह से करता है। उदाहरण #include <vector> #include <string> #include <sstream> using namespace std; int main() {