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

सी ++ प्रोग्राम में एक स्ट्रिंग से अलग-अलग वर्षों की कुल संख्या पाएं

इस ट्यूटोरियल में, हम एक प्रोग्राम लिखने जा रहे हैं जो दिए गए स्ट्रिंग में अलग-अलग साल ढूंढता है। आइए कुछ उदाहरण देखें। हम मान रहे हैं कि दिनांक प्रारूप DD/MM/YYYY . है ।

इनपुट - दिनांक 01/11/2020, 02/12/2020 और 03/10/2019 के साथ नमूना उदाहरण।

आउटपुट -2

दिए गए टेक्स्ट 2020 और 2019 में हमारे पास दो अलग-अलग साल हैं।

हम दिए गए स्ट्रिंग से सभी तिथियों को निकालने के लिए रेगेक्स का उपयोग करने जा रहे हैं। यदि आप C++ में रेगेक्स से परिचित नहीं हैं, तो इस ट्यूटोरियल को देखें।

आइए समस्या को हल करने के लिए कूदें।

  • टेक्स्ट को इनिशियलाइज़ करें।

  • टेक्स्ट से दिनांक निकालने के लिए रेगेक्स लिखें।

  • एक खाली अनियंत्रित सेट को इनिशियलाइज़ करें।

  • अद्वितीय वर्ष खोजने के लिए दिनांकों में पुनरावृति करें और अनियंत्रित सेट में वर्ष जोड़ें।

  • सेट की लंबाई प्रिंट करें।

उदाहरण

आइए कोड देखें।

#include <iostream>
#include <bits/stdc++.h>
#include <regex>
using namespace std;
int uniqueYearsCount(string text) {
   // regex
   regex date_regex("[0-9]{1,2}/[0-9]{1,2}/[0-9]{4}");
   smatch matching_date;
   // set to store unique dates
   unordered_set<string> dates;
   // finding all dates
   while (regex_search(text, matching_date, date_regex)) {
      string date = matching_date[0];
      dates.insert(date.substr(date.size() - 4));
      text = matching_date.suffix();
   }
   return dates.size();
}
int main() {
   string text = "Sample example with dates 01/11/2020, 02/12/2020, and 03/10/2019.";
   cout << uniqueYearsCount(text) << endl;
   return 0;
}

आउटपुट

यदि उपरोक्त कोड को चलाया जाता है, तो आपको निम्न परिणाम प्राप्त होंगे।

2

हम विभिन्न प्रारूपों में तिथियां प्राप्त कर सकते हैं। यदि आपको विभिन्न प्रारूपों में तिथियां मिलती हैं, तो रेगेक्स को उचित रूप से अपडेट करें।

निष्कर्ष

यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।


  1. सी ++ प्रोग्राम एनएच गैर फाइबोनैचि संख्या खोजने के लिए

    इस समस्या में, हमें एक पूर्णांक मान N दिया जाता है। हमारा कार्य Nth गैर फाइबोनैचि संख्या को खोजने के लिए C + + प्रोग्राम का उपयोग करना है । फाइबोनैचि श्रृंखला दो पिछली संख्याओं को जोड़कर बाद की संख्या उत्पन्न करती है। फाइबोनैचि श्रृंखला दो संख्याओं - F0 और F1 से शुरू होती है। F0 और F1 के प्रारंभिक

  1. सी++ में वां सम फाइबोनैचि नंबर खोजने का कार्यक्रम

    इस समस्या में, हमें एक पूर्णांक मान N दिया जाता है। हमारा कार्य Nth सम फाइबोनैचि संख्या ज्ञात करना है। । फाइबोनैचि श्रृंखला दो पिछली संख्याओं को जोड़कर बाद की संख्या उत्पन्न करती है। फाइबोनैचि श्रृंखला दो संख्याओं - F0 और F1 से शुरू होती है। F0 और F1 के प्रारंभिक मान क्रमशः 0, 1 या 1, 1 लिए जा सकते

  1. C++ का उपयोग करके एक स्ट्रिंग के सबस्ट्रिंग की संख्या ज्ञात करें

    इस लेख में, आप किसी दिए गए स्ट्रिंग में बनाए जा सकने वाले सबस्ट्रिंग (गैर-रिक्त) की संख्या को खोजने के तरीकों के बारे में जानेंगे। Input : string = “moon” Output : 10 Explanation: Substrings are ‘m’, ‘o’, ‘o’, ‘n’, ‘mo’, &lsqu