C# Strings

Introduction to C# Strings

एक string multiple characters की sequence होती है। उदाहरण के लिए INDIA एक string है। यह 5 characters क्रमशः I, N, D, I और A की sequence से बनी हुई है।

C# में एक single character को store करने के लिए char type available है। Char type का array create करके आप strings को भी store कर सकते है।

हालाँकि आपको ऐसा करने की आवश्यकता नहीं है। क्योंकि C# में strings को store करने के लिए string type available है। आप string type के variables create करके strings को store कर सकते है।

String type के variables create करने के लिए आप string या String keyword use करते है। C# में string keyword System.String class का alias (उपनाम) है। इसलिए C# में String और string दोनों ही समान है।

Character object की ही तरह C# में एक string भी object होती है। आप अपनी इच्छा अनुसार कोई सा भी keyword use कर सकते है। दोनों ही keywords द्वारा String class का object create होता है।

String class कई properties और methods provide करती है जिनकी मदद से strings के साथ कई प्रकार के operations perform किये जा सकते है। इसके अलावा string operations को आसान बनाने के लिए कई operators को भी overload किया गया है।

C# strings के आखिर में कोई null terminating character नहीं होता है। इसलिए C# strings में कितने भी null characters को include किया जा सकता है।

एक बात आपको हमेशा ध्यान रखनी चाहिए की C# में strings immutable (अपरिवर्तनीय) होती है। एक बार string create होने के बाद आप उसकी value को change नहीं कर सकते है। Strings को modify करने के लिए जितने भी operations perform किये जाते है वे original string को नहीं change करते है बल्कि result के रूप में एक नयी string return करते है।

Declaring & Initializing C# Strings

C# में strings को declare करने का general syntax निचे दिया जा रहा है।

string-keyword string-name;

ऊपर दिए गए syntax में सबसे पहले string keyword define किया गया है। जैसा की मैने पहले बताया C# string और String दोनों ही समान है इसलिए आप कोई भी keyword use कर सकते है। String keyword के बाद string का नाम define किया गया है। यह syntax सिर्फ string को declare करने का है।

String को initialize करने के लिए string के नाम के बाद assignment operator लगाकर value लिखी जाती है। इसका syntax निचे दिया जा रहा है।

string-keyword string-name = value;

यदि string की value शुरआत में unknown है तो आप string को null से भी initialize कर सकते है।

string-keyword string-name = null;

Null के अलावा आप String class का Empty constant भी empty string define करने के लिए use कर सकते है।

string-keyword string-name = System.String.Empty;

आप चाहे तो एक constant string भी create कर सकते है। इस तरह की string की value change नहीं की जा सकती है। Constant string create करने के लिए const keyword use किया जाता है।

const string-keyword string-name = value;

Properties of C# String Class

C# String class आपको दो महत्वपूर्ण properties provide करती है। इनके बारे में निचे बताया जा रहा है।

Chars

यह property current string object में से specify की गयी location का Char object return करती है। इस property को angular brackets द्वारा symbolise किया जाता है। इसका syntax निचे दिया जा रहा है।

string-name[index-number];

Length

यह property current string object में characters objects की सँख्या बताती है। इसे आप string के नाम के बाद dot (.) operator लगाकर use करते है। इसका syntax निचे दिया जा रहा है।

string-name.Length;

Methods of C# String Class

C# String class में 30 से अधिक methods available है जिन्हें आप use कर सकते है। यँहा पर उनमें से कुछ regularly use होने वाले methods बताये जा रहे है।

Compare(str1, str2)

यह method दो strings को compare करने के लिए use किया जाता है। इस method में argument के रूप में दो string objects pass किये जाते है। यह function एक int value return करता है। यदि return की गयी value 0 है तो दोनों string equal है नहीं तो दोनों strings unequal है।

Compare() method को String class के साथ इस प्रकार call किया जाता है।

String.Compare(stringObj1,stringObj2);

Contains(subString)

यह method current string object में किसी substring को find करने के लिए use किया जाता है। इस method को आप उस string पर call करते है जिसमें आप pass की गयी string को ढूँढना चाहते है। इसका syntax निचे दिया जा रहा है।

stringObject.Contains(subString)

यदि find की जाने वाली value मिल जाती है तो यह method true return करता है नहीं तो false return करता है।

Concat(str1, str2)

यह method इसमें pass किये गए दो string objects को जोड़ता है और result के रूप में नया string object generate करता है। इसका syntax निचे दिया जा रहा है।

strObj3 = String.Concat(strObj1, strObj2);

Substring(start-index-number, end-index-number)

यह method current string object से sub string को extract करने के लिए प्रयोग किया जाता है। इस method में argument के रूप में वह starting और ending index numbers pass किये जाते है जँहा से जँहा तक की आप substring extract करना चाहते है।

strObj2 = strObj1.Substring(start-index-number, end-index-number);

C# Strings Escape Sequence Characters

कुछ ऐसे special characters होते है जिन्हें strings में include करने के लिए आपको escape sequence characters को use करना पड़ता है। यदि आप इन्हें use नहीं करते है तो errors generate होती है।

उदाहरण के लिए यदि आप string में single quote use करना चाहते है तो आप उसे directly नहीं लिख सकते है। इसके लिए आपको ' escape sequence character use करना होगा।

इसी प्रकार और भी special characters के escape sequence character available है। ये सभी characters compile time में original characters में convert हो जाते है।

C# में available सभी escape sequence characters के बारे में निचे बताया जा रहा है।

  • ' - Single quote include करने के लिए।
  • '' - Double quote include करने के लिए।
  • \ - Backslash include करने के लिए।
  • \0 - Null include करने के लिए।
  • \a - Alert include करने के लिए।
  • \b - Backspace include करने के लिए।
  • \f - Form feed include करने के लिए।
  • \n - New line के लिए।
  • \r - Carriage return के लिए।
  • \t - Horizontal tab के लिए।
  • \U - Surrogate pairs के लिए unicode escape sequence include करने के लिए।
  • \u - Unicode escape sequence के लिए।
  • \v - Vertical tab के लिए।
  • \x - यह escape sequence character \u की तरह ही कार्य करता है लेकिन इसमें variable length unicode escape sequence नहीं होती है।

Example of C# Strings

C# strings का simple उदाहरण निचे दिया जा रहा है।

using System;

class stringDemo
{
   static void Main(String[] args)
   {
       string message = "Hello Reader";

       Console.WriteLine(message);
       Console.WriteLine("Hi "+message.Substring(6));
   }
}

ऊपर दिया गया उदाहरण निचे दिया गया output generate करता है।

Hello Reader
Hi Reader