सी . में स्ट्रस्ट्र

Strstr C



स्ट्रस्ट्र () सी भाषा में एक अंतर्निहित कार्य है। यदि आप उबंटू पर काम कर रहे हैं तो उबंटू टर्मिनल में मौजूद मैनुअल के माध्यम से स्ट्रस्ट्र की कार्यक्षमता को समझा जा सकता है। फिर टर्मिनल आपको strstr की गाइड दिखाएगा और यह कैसे काम करता है।

$पुरुषस्ट्रस्ट्र







उदाहरण 1

strstr के पहले उदाहरण पर विचार करें; हमने एक फाइल में कोड का इस्तेमाल किया है। और हम टर्मिनल में इस फाइल के माध्यम से आउटपुट प्राप्त करेंगे। जैसा कि ज्ञात है कि का इनपुट स्ट्रस्ट्र दो तार हैं, जिसमें एक स्ट्रिंग की घटना दूसरे स्ट्रिंग में पहचानी जाती है। सबसे पहले लाइब्रेरी हेडर string.h का उपयोग किया जाएगा जो स्ट्रिंग के कई कार्यों को संभालता है। यदि यह पुस्तकालय पेश नहीं किया गया है, तो स्ट्रिंग फ़ंक्शंस के प्रोग्राम को निष्पादित करना संभव नहीं है। इस स्रोत कोड में प्रयुक्त स्ट्रिंग फ़ंक्शन है



पी= स्ट्रस्ट्र (एस 1,एस 2)

इसमें p एक सूचक है। S1 और S2 दो तार हैं। हमें स्ट्रिंग s1 में s2 की घटना को खोजने की आवश्यकता है। परिणामों का प्रिंट आउट लेने के लिए, हमने उस शर्त को लागू करने के लिए एक if-else स्टेटमेंट का उपयोग किया है जो स्ट्रिंग की पहली घटना की जांच करता है। यदि मुख्य स्ट्रिंग में विशेष सबस्ट्रिंग मौजूद है, तो इसे एक पुष्टिकरण संदेश के साथ प्रदर्शित किया जाएगा। यदि यह मौजूद नहीं है, तो एक संदेश प्रदर्शित किया जाएगा।







उपरोक्त स्क्रीनशॉट में, आप एक इनपुट स्ट्रिंग देख सकते हैं जिससे आपको छोटी स्ट्रिंग की पहचान करने की आवश्यकता है। उस छोटी स्ट्रिंग का भी उल्लेख किया गया है यदि कथन p को पैरामीटर में तर्क के रूप में, के मान के रूप में लेगा स्ट्रस्ट्र फ़ंक्शन इसमें संग्रहीत है।

यदि आप Linux ऑपरेटिंग सिस्टम पर काम कर रहे हैं और आउटपुट प्राप्त करना चाहते हैं। फिर यह उबंटू टर्मिनल पर कुछ कमांड का उपयोग करके किया जा सकता है। संकलन के लिए पहला आदेश है



$जीसीसी -o file9 file9.c

संकलन के लिए, हमें एक कंपाइलर की आवश्यकता होती है, जीसीसी जिसका उपयोग लिनक्स पर एक सी प्रोग्राम को संकलित करने के लिए किया जाता है। -o का उपयोग स्रोत फ़ाइल से आउटपुट फ़ाइल में परिणाम को संग्रहीत करने के लिए किया जाता है। अब अगला कदम निष्पादन है।

$./फ़ाइल8

यह एक डॉट विधि का उपयोग करके पूरा किया जाता है। जिसमें हम फाइल के नाम के साथ एक डॉट और एक स्लैश का इस्तेमाल करते हैं।

आउटपुट से पता चलता है कि सबस्ट्रिंग मौजूद था और फ़ाइल में उसका स्थान भी दिखाता है।

उदाहरण 2

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

आउटपुट = स्ट्रस्ट्र(ए, सर्चस्ट्रिंग);

जैसा कि कोड में पॉइंटर वेरिएबल का उपयोग करके घटना प्राप्त की जाती है। क्योंकि इस पॉइंटर का इस्तेमाल सबस्ट्रिंग की लोकेशन जानने और सबस्ट्रिंग को देखने के लिए किया जाता है, हम आउटपुट कमांड में बिना तारक के केवल वेरिएबल नाम का इस्तेमाल करते हैं। यदि हम स्थान प्रदर्शित करना चाहते हैं, तो हम सूचक (एक तारक के साथ चर), यानी, आउटपुट का उपयोग करेंगे।

आप इसे आउटपुट में देख सकते हैं। फ़ंक्शन शब्द को सबस्ट्रिंग के रूप में खोजा जाना था। सबस्ट्रिंग के साथ वर्ण भी प्रदर्शित होते हैं।

उदाहरण 3

इस कोड में, हम सबसे पहले उप-स्ट्रिंग की घटना का पता लगाएंगे, और फिर इस उप-स्ट्रिंग को दूसरी स्ट्रिंग से बदल दिया जाएगा। फिर से दो तार इनपुट के रूप में आरक्षित होंगे। एक बड़ा तार है, और दूसरा एक ऐसा शब्द है जिसे उसके घटित होने के बाद बदल दिया जाएगा। NS स्ट्रस्ट्र फ़ंक्शन मूल उप-स्ट्रिंग के साथ छोटे उप-स्ट्रिंग से मेल खाता है। और जब मैच पहली बार स्थापित होता है, तो यह मान लौटाता है। लेकिन इस उदाहरण में, इस मान को और बदल दिया गया है। आइए देखें कि यह कैसे काम करेगा।

पी = स्ट्रस्ट्र(s1, s2);

जहां p इसमें होने वाली वैल्यू को स्टोर करेगा, S1 और s2 इनपुट स्ट्रिंग्स हैं।

अब हमारे पास उस इनपुट स्ट्रिंग की घटना का बिंदु है। अब हम इस स्ट्रिंग को दूसरे शब्द से बदल देंगे। यह if कथन के मुख्य भाग में किया जाता है। इससे पता चलता है कि यदि शर्त सत्य है, तो शब्द की स्थापना की जाती है, फिर दूसरे शब्द द्वारा प्रतिस्थापित किया जाता है। यह प्रतिस्थापन किसी अन्य स्ट्रिंग फ़ंक्शन के माध्यम से किया जाता है।

स्ट्रैपी(पी, स्ट्रस्ट्र)

हम शब्द को से बदलना चाहते हैं स्ट्रस्ट्र . जहां p उस सबस्ट्रिंग की पहली घटना का स्थान है जिसे फ़ंक्शन ने बदल दिया है। स्ट्रैपी () इन दो शब्दों को स्ट्रिंग में बदल देता है। आउटपुट उसी संकलन-निष्पादन विधि के माध्यम से प्राप्त किया जाएगा।

आउटपुट से, आप देख सकते हैं कि स्ट्रिंग को अब दूसरे शब्द से बदल दिया गया है जिसे हमने strcpy फ़ंक्शन में वर्णित किया है।

उदाहरण 4

यह उदाहरण उसी अवधारणा को दर्शाता है। यहां हमने एक सबस्ट्रिंग के रूप में शब्द के अलावा एक चरित्र के रूप में खाली स्थान लिया है। यह एक सरल उदाहरण है जिसमें हमने if-statement का भी उपयोग नहीं किया है। केवल मैच और डिस्प्ले कॉन्सेप्ट लागू किया जाता है। इनपुट के रूप में दो तार लिए जाते हैं। इसके अलावा, शब्द संदेश के साथ प्रदर्शित होता है। NS स्ट्रस्ट्र उसी तरह काम करता है।

सी= स्ट्रस्ट्र(ए, बी);

यहाँ c वह चर है जहाँ घटना बिंदु संग्रहीत किया जाएगा।

अब, हम आउटपुट प्राप्त करेंगे।

आउटपुट से, आप देख सकते हैं कि हमारे द्वारा पेश किए गए सबस्ट्रिंग के साथ स्पेस भी गिना जाता है।

उदाहरण 5

यह उदाहरण पिछले वाले से काफी अलग है। यहां हमने की क्रिया करने के लिए एक अलग फ़ंक्शन का उपयोग किया है स्ट्रस्ट्र () मुख्य कार्यक्रम के बजाय। इसकी तुलना में, फ़ंक्शन कॉल के पैरामीटर में मानों को तर्क के रूप में पारित किया जाएगा। इस उदाहरण में, हमने सबस्ट्रिंग का उल्लेख किया है, और प्रोग्राम, निष्पादन के बाद, आउटपुट में मान के बजाय पहली घटना की स्थिति दिखाएगा। फ़ंक्शन वेरिएबल्स में मान प्राप्त करेगा, और फिर हम लागू करेंगे स्ट्रस्ट्र () इन चरों पर। if-else स्टेटमेंट का इस्तेमाल उपलब्धता की जांच करने और कंडीशन को सही करने के लिए किया जाता है और अगर यह गलत है तो दूसरे हिस्से में जाएं।

Char*स्थिति = strstr(स्ट्र, सबस्ट्रेट);

जबकि पी एक स्ट्रिंग है, सबस्ट्रिंग एक सबस्ट्रिंग है। चार* स्थिति स्ट्रिंग में एक सबस्ट्रिंग की पहली घटना की स्थिति है। संकेत ' %एस प्रदर्शित होने वाले कथन में मौजूद का अर्थ है एक सबस्ट्रिंग और पूरी स्ट्रिंग को बदलना। जैसा कि पैरामीटर में स्ट्रिंग से पहले सबस्ट्रिंग मौजूद है।

अब मुख्य कार्यक्रम की ओर बढ़ते हैं। सबसे पहले एक स्ट्रिंग पेश की जाती है जिसे फ़ंक्शन कॉल के माध्यम से पारित किया जाएगा

Find_str(str , best);

यहां हमने स्ट्रिंग के साथ सबस्ट्रिंग को भी जोड़ा है। हर बार एक नया सबस्ट्रिंग जोड़ा जाता है। दूसरी बार हमने एक फ्री स्पेस कैरेक्टर जोड़ा है। तीसरी बार, एक सबस्ट्रिंग जो स्ट्रिंग का हिस्सा नहीं है जोड़ा जाता है। और अंत में एक अक्षर का प्रयोग किया जाता है।

आदेशों का प्रयोग करें और फिर नीचे संलग्न परिणाम देखें।

सी प्रोग्राम फ़ंक्शन कॉल का परिणाम यहां दिया गया है। पहले दो और चौथे कथन शर्त को पूरा करते हैं, इसलिए उत्तर प्रदर्शित होता है। तीसरा वाला प्रासंगिक नहीं है, इसलिए दूसरा भाग इसे संभाल लेगा।

निष्कर्ष

इस लेख में, का उपयोग स्ट्रस्ट्र उदाहरण सहित चर्चा की गई है। ये उदाहरण उस अवधारणा का कई तरह से उपयोग करने में विविधता दिखाते हैं। लाइब्रेरी में उनके हेडर की उपस्थिति में स्ट्रिंग फ़ंक्शंस का उपयोग करना आसान है।