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

C++ में जांचें कि क्या स्ट्रिंग में सब-स्ट्रिंग है


यहां हम देखेंगे कि C++ में स्ट्रिंग लाइब्रेरी फंक्शन्स का उपयोग करके स्ट्रिंग्स को कैसे मैच करें। यहां हम सबस्ट्रिंग की घटनाओं को मुख्य स्ट्रिंग में प्राप्त करने के लिए find() ऑपरेशन का उपयोग कर रहे हैं। यह find() मेथड पहली लोकेशन लौटाता है जहां स्ट्रिंग मिली है। यहां हम सभी मैच प्राप्त करने के लिए इस find() फंक्शन का कई बार उपयोग कर रहे हैं।

यदि आइटम मिल जाता है, तो यह फंक्शन पोजीशन लौटाता है। लेकिन यदि नहीं मिलता है, तो यह string::npos लौटाएगा।

इसलिए यह जांचने के लिए कि क्या सबस्ट्रिंग मुख्य स्ट्रिंग में मौजूद है, हमें find() के रिटर्न वैल्यू की जांच करनी होगी कि यह string::npos है या नहीं।

यहां हम केवल वह पोजीशन प्राप्त कर रहे हैं जहां सबस्ट्रिंग मौजूद है।

इनपुट: मुख्य स्ट्रिंग "aabbabababbbaabb" और सबस्ट्रिंग "abb"
आउटपुट: वे लोकेशन जहां सबस्ट्रिंग्स मिली हैं। [1, 8, 13]

एल्गोरिदम

String_Find(main_str, sub_str)

इनपुट - मुख्य स्ट्रिंग और चेक करने के लिए सबस्ट्रिंग

आउटपुट - मुख्य स्ट्रिंग में सबस्ट्रिंग की पोजीशन

pos := 0
जबकि index = pos से स्ट्रिंग के अंत तक की रेंज में sub_str की पहली घटना, करें
    इंडेक्स प्रिंट करें क्योंकि वहां मैच है
    pos := index + 1
किया

उदाहरण कोड

#include <iostream>
using namespace std;

main() {
    string str1 = "aabbabababbbaabb";
    string str2 = "abb";
    int pos = 0;
    int index;
    while ((index = str1.find(str2, pos)) != string::npos) {
        cout << "Match found at position: " << index << endl;
        pos = index + 1; // नई पोजीशन इंडेक्स के अगले एलिमेंट से है
    }
}

आउटपुट

Match found at position: 1
Match found at position: 8
Match found at position: 13

  1. Swift में स्ट्रिंग में दूसरी स्ट्रिंग है या नहीं जांचें Swift में स्ट्रिंग में दूसरी स्ट्रिंग है या नहीं जांचें

    स्ट्रिंग कंटेनमेंट चेक Swift में यह जांचने के लिए कि कोई स्ट्रिंग दूसरी स्ट्रिंग को कंटेन करती है या नहीं, हमें दो अलग-अलग स्ट्रिंग्स की आवश्यकता होगी। एक स्ट्रिंग जिसे हमें जांचना है कि क्या उसमें दूसरी स्ट्रिंग है। मान लीजिए जिस स्ट्रिंग को हम जांचना चाहते हैं वह point है और पूरी स्ट्रिंग Tutoria

  1. - C/C++ में कैसे जांचें कि स्ट्रिंग इंटीजर है?

    यह जांचने के कई तरीके हैं कि स्ट्रिंग इंटीजर है या नहीं और उनमें से एक तरीका isdigit() का उपयोग करके स्ट्रिंग की जांच करना है। उदाहरण #include <iostream> #include <string.h> using namespace std; int main() { char str[] = 3257fg; for (int i = 0; i < strlen(str); i++) {

  1. - पायथन में जांचें कि कोई स्ट्रिंग सम लंबाई का पैलिंड्रोमिक सबस्ट्रिंग समाहित करती है या नहीं

    मान लीजिए हमारे पास एक स्ट्रिंग s है। हमें यह जांचना है कि क्या यह स्ट्रिंग किसी सम लंबाई के पैलिंड्रोम को समाहित करती है या नहीं। उदाहरण के लिए, यदि इनपुट s = afternoon है, तो आउटपुट True होगा क्योंकि afternoon में सम लंबाई का पैलिंड्रोम noon है। समाधान दृष्टिकोण कोई भी सम लंबाई का पैलिंड्रोम कम