C++ में सबस्ट्र () फ़ंक्शन का उपयोग कैसे करें?

How Use Substr Function C



किसी डोरी से किसी भाग को काटने की विधि उप-स्ट्रिंग कहलाती है। एक स्ट्रिंग से किसी विशेष भाग को काटकर एक नई स्ट्रिंग उत्पन्न करने के लिए सबस्ट्र () फ़ंक्शन सी ++ में मौजूद है। NS string.h इस फ़ंक्शन का उपयोग करने के लिए लाइब्रेरी फ़ाइल को शामिल करना आवश्यक है। इस फ़ंक्शन के दो तर्क हैं। पहले तर्क में नई स्ट्रिंग की प्रारंभिक स्थिति होती है, और दूसरे तर्क में स्ट्रिंग की लंबाई होती है। इस ट्यूटोरियल में C++ में सबस्ट्र () फंक्शन का उपयोग करने का तरीका समझाया गया है।

पूर्व-अपेक्षा

इस ट्यूटोरियल के उदाहरणों की जाँच करने से पहले, आपको यह जाँचना होगा कि सिस्टम में g++ कंपाइलर स्थापित है या नहीं। यदि आप विजुअल स्टूडियो कोड का उपयोग कर रहे हैं, तो निष्पादन योग्य कोड बनाने के लिए C++ स्रोत कोड को संकलित करने के लिए आवश्यक एक्सटेंशन इंस्टॉल करें। यहां, विजुअल स्टूडियो कोड एप्लिकेशन का उपयोग सी ++ कोड को संकलित और निष्पादित करने के लिए किया गया है।







वाक्य - विन्यास

स्ट्रिंग सबस्ट्र (size_t pos = 0, size_t len ​​= npos) const;



यहां, पहले तर्क में प्रारंभिक स्थिति होती है जहां से उप-स्ट्रिंग प्रारंभ की जाएगी, और दूसरे तर्क में उप-स्ट्रिंग की लंबाई होती है। यदि मान्य प्रारंभिक स्थिति और लंबाई दी गई है, तो फ़ंक्शन उप-स्ट्रिंग लौटाएगा। इस फ़ंक्शन के विभिन्न उपयोग इस ट्यूटोरियल के अगले भाग में दिखाए गए हैं।



उदाहरण 1: सबस्ट्र का सरल उपयोग ()

निम्न उदाहरण सबस्ट्र () फ़ंक्शन का सबसे सामान्य और सरल उपयोग दिखाता है। एक स्ट्रिंग मान से एक सबस्ट्रिंग उत्पन्न करने के लिए निम्न कोड के साथ एक C++ फ़ाइल बनाएँ। कई शब्दों की एक स्ट्रिंग को एक स्ट्रिंग वैरिएबल में असाइन किया गया है। अगला, मान्य प्रारंभिक स्थिति और उप-स्ट्रिंग की लंबाई सबस्ट्र () फ़ंक्शन के तर्क मानों में होती है। कोड को निष्पादित करने के बाद मूल स्ट्रिंग और सबस्ट्रिंग दोनों को प्रिंट किया जाएगा।





// आवश्यक पुस्तकालयों को शामिल करें
#शामिल
#शामिल


NSमुख्य() {
// एक स्ट्रिंग चर को परिभाषित करें
घंटे::डोरीमूलस्त्री='लिनक्सहिंट में आपका स्वागत है';
// सबस्ट्रिंग का उपयोग करके सबस्ट्रिंग को काटें ()
घंटे::डोरीन्यूस्ट्रो=मूलपदार्थ (ग्यारह,9);
// मूल स्ट्रिंग प्रिंट करें
घंटे::लागत <<'मूल स्ट्रिंग है:' <<मूलस्त्री<< 'एन';
// उप स्ट्रिंग प्रिंट करें
घंटे::लागत <<'सबस्ट्रिंग है:' <<न्यूस्ट्रो<< 'एन';

वापसी 0;
}

आउटपुट:

कोड के अनुसार, मूल स्ट्रिंग है ' LinuxHint में आपका स्वागत है '। 11 ने उप-स्ट्रिंग की प्रारंभिक स्थिति के रूप में दिया है जो कि 'L' वर्ण की स्थिति है, और 9 ने उप-स्ट्रिंग की लंबाई मान के रूप में दिया है। ' लिनक्ससंकेत ' कोड निष्पादित करने के बाद सबस्ट्र () फ़ंक्शन के आउटपुट के रूप में वापस आ गया है।



उदाहरण 2: किसी विशिष्ट स्ट्रिंग की स्थिति के आधार पर सबस्ट्र () का उपयोग करना

निम्नलिखित कोड विशेष स्ट्रिंग की स्थिति खोजने के बाद उप-स्ट्रिंग उत्पन्न करेगा। कोड का परीक्षण करने के लिए निम्न कोड के साथ एक C++ फ़ाइल बनाएँ। कोड में कई शब्दों का एक स्ट्रिंग मान परिभाषित किया गया है। इसके बाद, किसी विशेष स्ट्रिंग की स्थिति को मुख्य स्ट्रिंग में खोज () फ़ंक्शन का उपयोग करके खोजा जाता है। सबस्ट्र () फ़ंक्शन का उपयोग उप-स्ट्रिंग को स्ट्रिंग की शुरुआत से स्थिति मान तक उत्पन्न करने के लिए किया गया है जो कि खोज () फ़ंक्शन द्वारा वापस किया जाएगा।

// आवश्यक पुस्तकालयों को शामिल करें
#शामिल
#शामिल
का उपयोग करते हुए नाम स्थानघंटे;

NSमुख्य()
{
घंटे::डोरीस्ट्रडाटा= 'मुझे C++ प्रोग्रामिंग पसंद है';

// आइए str.find () का उपयोग करके '-' की स्थिति का पता लगाएं
NSपद=स्ट्रडाटापाना('प्रोग्रामिंग');

// हम इस पैटर्न तक सबस्ट्रिंग प्राप्त करेंगे
घंटे::डोरीन्यूस्ट्रो=स्ट्रडाटापदार्थ(0, पद);

घंटे::लागत <<स्ट्रडाटा<< 'एन';
घंटे::लागत <<न्यूस्ट्रो<< 'एन';

वापसी 0;
}

आउटपुट:

कोड के अनुसार, मुख्य स्ट्रिंग मान है, मुझे C++ प्रोग्रामिंग पसंद है और खोज स्ट्रिंग का मान है, ' प्रोग्रामिंग' जो मुख्य स्ट्रिंग में मौजूद है। तो, आउटपुट है, ' मुझे सी ++ पसंद है ' कोड निष्पादित करने के बाद।

उदाहरण 3: अपवाद हैंडलिंग के साथ सबस्ट्र () का उपयोग करना

निम्नलिखित कोड में सबस्ट्र () फ़ंक्शन का उपयोग अपवाद हैंडलिंग के साथ किया गया है। यदि सबस्ट्र () फ़ंक्शन में अमान्य प्रारंभिक स्थिति दी गई है तो अपवाद उत्पन्न होगा। कोड का परीक्षण करने के लिए निम्न कोड के साथ एक C++ फ़ाइल बनाएँ। कोशिश ब्लॉक में, एक शब्द का एक स्ट्रिंग मान असाइन किया गया है, और सबस्ट्र () फ़ंक्शन में एक अमान्य प्रारंभिक स्थिति का उपयोग किया गया है जो अपवाद उठाएगा और त्रुटि संदेश प्रिंट करेगा।

// आवश्यक पुस्तकालयों को शामिल करें
#शामिल
#शामिल

NSमुख्य() {
प्रयत्न{

// एक स्ट्रिंग चर को परिभाषित करें
घंटे::डोरीमूलस्त्री='लिनक्सहिंट';
// सबस्ट्रिंग का उपयोग करके सबस्ट्रिंग को काटें ()
घंटे::डोरीन्यूस्ट्रो=मूलपदार्थ (ग्यारह,9);
// उप स्ट्रिंग प्रिंट करें
घंटे::लागत <<'सबस्ट्रिंग है:' <<न्यूस्ट्रो<< 'एन';
}
पकड़ (स्थिरांकघंटे::क्षेत्र के बहार) {
घंटे::सेरा << 'स्थिति सीमा से बाहर है।एन';
}
वापसी 0;
}

आउटपुट:

कोड के अनुसार, मुख्य स्ट्रिंग मान है, लिनक्ससंकेत और शुरुआती स्थिति का मान 11 है जो मौजूद नहीं है। तो, अपवाद उत्पन्न हो गया है, और कोड निष्पादित करने के बाद त्रुटि संदेश मुद्रित किया गया है।

उदाहरण 4: स्ट्रिंग को विभाजित करने के लिए सबस्ट्र () का उपयोग करना

निम्न उदाहरण एक सीमांकक के आधार पर एक स्ट्रिंग को विभाजित करने के लिए सबस्ट्र () फ़ंक्शन के उपयोग को दिखाता है। खोज () फ़ंक्शन का उपयोग सीमांकक स्थिति को खोजने के लिए किया गया है, और मिटा () फ़ंक्शन का उपयोग मुख्य स्ट्रिंग से सीमांकक के साथ विभाजित स्ट्रिंग को हटाने के लिए किया गया है। 'जबकि' लूप ने मुख्य स्ट्रिंग में सीमांकक के सभी पदों को खोजने और विभाजित मान को वेक्टर सरणी में संग्रहीत करने के लिए उपयोग किया है। अगला, वेक्टर सरणी के मान मुद्रित किए गए हैं।

// आवश्यक पुस्तकालयों को शामिल करें
#शामिल
#शामिल
#शामिल

NSमुख्य(){
// स्ट्रिंग को परिभाषित करें
घंटे::डोरीस्ट्रिंगडेटा= 'PHP:C++:पायथन:';
// विभाजक को परिभाषित करें
घंटे::डोरीसेपरेटर= ':';
// वेक्टर वैरिएबल घोषित करें
घंटे::वेक्टरभाषाओं{};
// पूर्णांक चर घोषित करें
NSपद;
// स्ट्रिंग वैरिएबल घोषित करें
घंटे::डोरीबाहर;
/ *
सबस्ट्र () फ़ंक्शन का उपयोग करके स्ट्रिंग को विभाजित करें
और विभाजित शब्द को वेक्टर में जोड़ना
* /

जबकि ((पद=स्ट्रिंगडाटा।पाना(सेपरेटर)) !=घंटे::डोरी::एनपीओ) {
भाषाएं।वापस धक्का देना(स्ट्रिंगडाटा।पदार्थ(0, पद));
स्ट्रिंगडाटा।मिटा(0, पद+विभाजक।लंबाई());
}
// सभी विभाजित शब्दों को प्रिंट करें
के लिये (स्थिरांक ऑटो औरबाहर:भाषाओं) {
घंटे::लागत <<बाहर<<घंटे::एंडली;
}
वापसी 0;
}

आउटपुट:

कोड के अनुसार, मुख्य स्ट्रिंग मान है पीएचपी:सी++:पायथन और सीमांकक का मान है, ' : ' . उपरोक्त स्क्रिप्ट को निष्पादित करने के बाद निम्न आउटपुट दिखाई देगा।

निष्कर्ष

सबस्ट्र () फ़ंक्शन का उपयोग करने का मुख्य उद्देश्य प्रारंभिक स्थिति और उप-स्ट्रिंग की लंबाई का उल्लेख करके एक स्ट्रिंग से एक सबस्ट्रिंग को पुनः प्राप्त करना है। इस फ़ंक्शन के विभिन्न उपयोगों को इस ट्यूटोरियल में कई उदाहरणों का उपयोग करके समझाया गया है ताकि नए सी ++ उपयोगकर्ताओं को अपने कोड में इसे ठीक से उपयोग करने में मदद मिल सके।