उदाहरण के साथ VB.NET सबस्ट्रिंग विधि
सबस्ट्रिंग क्या है?
सबस्ट्रिंग फ़ंक्शन का उपयोग निर्दिष्ट स्ट्रिंग का एक भाग प्राप्त करने के लिए किया जाता है। यह विधि स्ट्रिंग क्लास में परिभाषित की गई है Microsoft VB.NET. आपको वह आरंभिक इंडेक्स निर्दिष्ट करना होगा जिससे स्ट्रिंग निकाली जाएगी। स्ट्रिंग उस इंडेक्स से आपके द्वारा निर्दिष्ट लंबाई तक निकाली जाएगी।
इस ट्यूटोरियल में आप सीखेंगे
सबस्ट्रिंग का सिंटैक्स
फ़ंक्शन दो तर्क स्वीकार करता है जैसा कि निम्नलिखित सिंटैक्स में दिखाया गया है:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
यहाँ,
- ByVal कीवर्ड पास-बाय-वैल्यू को दर्शाता है, जो फ़ंक्शन में तर्कों को पास करने का एक तंत्र है।
- start_Index वह इंडेक्स है जिससे सबस्ट्रिंग प्राप्त की जाएगी
- sub_length उस लंबाई को दर्शाता है जिस तक स्ट्रिंग को start_Index से कॉपी किया जाएगा। यह लंबाई वर्णों की संख्या के संदर्भ में मापी जाती है। फ़ंक्शन निकाले गए सबस्ट्रिंग को लौटाएगा।
उदाहरण
चरण 1) एक नया कंसोल अनुप्रयोग बनाएँ.
चरण 2) इसमें निम्नलिखित कोड जोड़ें:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(0, 4) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
चरण 3) कोड निष्पादित करने के लिए टूलबार से स्टार्ट बटन पर क्लिक करें। आपको निम्न परिणाम मिलना चाहिए:
हमने निम्नलिखित कोड का उपयोग किया है:
कोड की व्याख्या:
- Module1 नामक एक मॉड्यूल बनाना.
- मुख्य उप-प्रक्रिया प्रारंभ करना।
- st नामक एक स्ट्रिंग वेरिएबल को परिभाषित करना तथा उसे Guru99 मान निर्दिष्ट करना।
- इंडेक्स 0f से स्ट्रिंग 'st' के उपस्ट्रिंग और 4 वर्णों की लंबाई के रूप में 'subst' नामक स्ट्रिंग चर को परिभाषित करना।
- कंसोल पर कुछ पाठ और उपरोक्त सबस्ट्रिंग को प्रिंट करना।
- कंसोल विंडो को कुछ समय के लिए रोककर उपयोगकर्ता द्वारा इसे बंद करने की कार्रवाई की प्रतीक्षा करना।
- मुख्य उप-प्रक्रिया का अंत.
- मॉड्यूल का अंत.
एक तर्क
अगर हम फ़ंक्शन को सिर्फ़ एक तर्क देते हैं तो क्या होगा? फ़ंक्शन उस इंडेक्स से शुरू होने वाले स्ट्रिंग के सभी डेटा को कॉपी कर देगा। ऐसा होता है कि सबस्ट्रिंग फ़ंक्शन आंतरिक रूप से उस इंडेक्स पर सभी स्ट्रिंग डेटा के साथ-साथ उस इंडेक्स के बाद आने वाले डेटा को भी कॉपी कर लेता है। उदाहरण के लिए:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(4) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
कोड चलाने के लिए स्टार्ट बटन पर क्लिक करें। यह निम्नलिखित परिणाम देगा:
सबस्ट्रिंग फ़ंक्शन ने 99 लौटाया। हमने फ़ंक्शन को पैरामीटर 4 दिया, जिसका अर्थ है कि यह स्ट्रिंग के अंत तक इंडेक्स 4 पर वर्ण से सबस्ट्रिंग निकालना शुरू कर देगा। 9 स्ट्रिंग गुरु4 के इंडेक्स 99 पर वर्ण है, इसलिए निष्कर्षण वहीं से शुरू हुआ।
मध्य वर्ण
हमारे लिए प्रश्न में स्ट्रिंग के मध्य अक्षर प्राप्त करना भी संभव है। इस मामले में, हमें केवल आरंभिक इंडेक्स और स्ट्रिंग की लंबाई प्रदान करनी होगी जिसकी हमें आवश्यकता है। निम्नलिखित उदाहरण में, हम इंडेक्स 2 से निर्दिष्ट स्ट्रिंग का एक सबस्ट्रिंग प्राप्त कर रहे हैं और स्ट्रिंग की लंबाई 2 अक्षर होगी:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim subst As String = st.Substring(2, 2) Console.WriteLine("The substring is: {0}", subst) Console.ReadKey() End Sub End Module
कोड चलाने के लिए टूलबार से स्टार्ट बटन पर क्लिक करें। आपको निम्न परिणाम मिलेगा:
उपरोक्त उदाहरण में, सबस्ट्रिंग फ़ंक्शन ने ru लौटाया। हमने फ़ंक्शन को पैरामीटर (2, 2) पास किए। पहला 2 फ़ंक्शन को इंडेक्स 2 से सबस्ट्रिंग का निष्कर्षण शुरू करने का निर्देश देता है जबकि दूसरा 2 फ़ंक्शन को केवल 2 वर्णों की लंबाई वाली सबस्ट्रिंग लौटाने का निर्देश देता है। इसका मतलब है कि सबस्ट्रिंग का निष्कर्षण स्ट्रिंग गुरु2 के इंडेक्स 99 पर स्थित तत्व से शुरू होना चाहिए, जो कि r है। चूँकि लौटाए गए सबस्ट्रिंग की लंबाई केवल 2 वर्ण होनी चाहिए, इसलिए निष्कर्षण 'u' से आगे नहीं जाएगा, इसलिए यह 'ru' लौटाता है।
एक चार
हम स्ट्रिंग से एक सिंगल कैरेक्टर प्राप्त करने के लिए सबस्ट्रिंग फ़ंक्शन का उपयोग कर सकते हैं। ऐसे मामले में, आपके लिए आवंटन करना ज़रूरी है लेकिन कैरेक्टर को सीधे एक्सेस किया जा सकता है। यह थोड़ा तेज़ है। निम्न उदाहरण दो तरीकों को प्रदर्शित करता है जिसके माध्यम से हम इसे प्राप्त कर सकते हैं:
Module Module1 Sub Main() Dim st As String = "Guru99" Dim mid1 As Char = st(1) Console.WriteLine(mid1) Dim mid2 As String = st.Substring(1, 1) Console.WriteLine(mid2) Console.ReadKey() End Sub End Module
कोड चलाने के लिए स्टार्ट बटन पर क्लिक करें। आपको निम्न परिणाम मिलेगा:
हमने निम्नलिखित कोड का उपयोग किया है:
कोड की व्याख्या:
- Module1 नामक एक मॉड्यूल बनाना.
- मुख्य उप-प्रक्रिया प्रारंभ करना।
- st नामक एक स्ट्रिंग वेरिएबल को परिभाषित करना तथा उसे Guru99 मान निर्दिष्ट करना।
- mid1 नामक स्ट्रिंग वैरिएबल को परिभाषित करना और स्ट्रिंग st के इंडेक्स 1 पर वर्ण प्राप्त करना। यह वर्ण वैरिएबल mid1 को असाइन किया जाएगा।
- कंसोल पर उपरोक्त अक्षर मुद्रित करना।
- mid2 नामक स्ट्रिंग वैरिएबल को परिभाषित करना और स्ट्रिंग st से 1 की लंबाई के साथ इंडेक्स 1 पर वर्ण प्राप्त करना। 1 की लंबाई का मतलब है कि यह शुरुआती इंडेक्स पर समान वर्ण लौटाएगा। गिनती आपके द्वारा निर्दिष्ट शुरुआती इंडेक्स से शुरू होती है। यह वर्ण वैरिएबल mid2 को असाइन किया जाएगा।
- कंसोल पर उपरोक्त अक्षर मुद्रित करना।
- कंसोल विंडो को कुछ समय के लिए रोककर उपयोगकर्ता द्वारा इसे बंद करने की कार्रवाई की प्रतीक्षा करना।
- मुख्य उप-प्रक्रिया का अंत.
- मॉड्यूल का अंत.
सारांश
- Substring फ़ंक्शन Visual Basic.NET के String वर्ग में परिभाषित किया गया है।
- यह दो तर्क स्वीकार करता है, जो सबस्ट्रिंग का प्रारंभिक बिंदु और सबस्ट्रिंग की लंबाई है।
- हम मुख्य स्ट्रिंग से सबस्ट्रिंग के विभिन्न सेट प्राप्त करने के लिए इन तर्कों के साथ खेल सकते हैं।