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

C++ में अल्पविराम-सीमांकित std::string को पार्स करना

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

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

getline (input_stream, string, delim)

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

Input: Some strings "ABC,XYZ,Hello,World,25,C++"
Output: Separated string ABC XYZ Hello World 25 C++

एल्गोरिदम

Step 1: Create stream from given string
Step 2: While the stream is not completed
Step 2.1: Take item before comma
Step 2.2: Add item into a vector
Step 3: Return the vector

उदाहरण कोड

#include<iostream>
#include<vector>
#include<sstream>
using namespace std;
main() {
   string my_str = "ABC,XYZ,Hello,World,25,C++";
   vector<string> result;
   stringstream s_stream(my_str); //create string stream from the string
   while(s_stream.good()) {
      string substr;
      getline(s_stream, substr, ','); //get first string delimited by comma
      result.push_back(substr);
   }
   for(int i = 0; i<result.size(); i++) {    //print all splitted strings
      cout << result.at(i) << endl;
   }
}

आउटपुट

ABC
XYZ
Hello
World
25
C++

  1. सी ++ में एक वर्ण को स्ट्रिंग में कैसे परिवर्तित करें?

    एक वर्ण को एक स्ट्रिंग में बदलने की कई विधियाँ हैं। निम्नलिखित उदाहरण में, उनमें से कुछ का उपयोग किसी वर्ण को एक स्ट्रिंग में बदलने के लिए किया जाता है। यहाँ C++ भाषा में किसी एकल वर्ण को स्ट्रिंग में बदलने का एक उदाहरण दिया गया है, उदाहरण #include <iostream> #include<string> #include&l

  1. C++ में एक std::string को const char* या char* में कैसे बदलें?

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

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

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