Latest web development tutorials

C # سلسلة (سلسلة)

في C #، يمكنك استخدام مجموعة من الشخصيات لتمثيل السلاسل، ولكن هذه الممارسة أكثر شيوعا هو استخدام الكلمةسلسلة تعريف متغير سلسلة.سلسلة الكلمة هي اسم مستعار لفئةSystem.String.

إنشاء كائنات سلسلة

يمكنك استخدام إحدى الطرق التالية لإنشاء كائنات سلسلة:

  • بواسطة متغير سلسلة لتحديد سلسلة
  • باستخدام منشئ فئة سلسلة
  • باستخدام مشغل سلسلة سلسلة (+)
  • طريق استرداد الممتلكات أو استدعاء أسلوب يقوم بإرجاع سلسلة
  • من خلال تنسيق طريقة لتحويل قيمة أو كائن لتمثيل سلسلة ل

يوضح المثال التالي هذه النقطة:

باستخدام نظام.

مساحة StringApplication
{
    برنامج الدرجة
    {
        ساكنة باطلة الرئيسية (سلسلة [] وسائط)
        {
           // سلسلة سلسلة سلسلة سلسلة fname، lname.
            fname = "روان".
            lname = "أتكينسون".

            سلسلة FULLNAME = fname + lname.
            Console.WriteLine ( "الاسم: {0}"، FULLNAME)؛

            // باستخدام شار سلسلة منشئ [] = {رسائل 'H'، 'ه'، 'ل'، 'ل'، 'س'}؛
            تحيات سلسلة = سلسلة جديدة (رسائل)؛
            Console.WriteLine ( "تحيات: {0}"، تحيات)؛

            // الأسلوب بإرجاع سلسلة سلسلة [] sarray = { "مرحبا"، "من"، "دروس"، "نقطة"}؛
            رسالة سلسلة = String.Join ( ""، sarray)؛
            Console.WriteLine ( "رسالة: {0}"، رسالة)؛

            // طريقة تنسيق لتحويل قيم التاريخ والوقت الانتظار = التاريخ والوقت الجديد (2012، 10، 10، 17، 58، 1)؛
            دردشة سلسلة = String.Format ( "رسالة أرسلت في {0: ر} على {0: D}"، 
            انتظار)؛
            Console.WriteLine ( "رسالة: {0}"، والدردشة)؛
            Console.ReadKey ()؛
        }
    }
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

الاسم الكامل: روان أتكينسون
تحيات: مرحبا
الرسالة: مرحبا من دروس نقطة
الرسالة: رسالة أرسلت في 17:58 على الأربعاء 10 أكتوبر، 2012

الفئة سلسلة الملكية

الفئة سلسلة لديه خاصيتين التالية:

序号属性名称 & 描述
1Chars
在当前String对象中获取Char对象的指定位置。
2Length
在当前的String对象中获取字符数。

أساليب الفئة سلسلة

الفئة سلسلة لديها العديد من الأساليب لكائن سلسلة التشغيل. ويقدم الجدول التالي بعض الأساليب الأكثر شيوعا:

序号方法名称 & 描述
1public static int Compare( string strA, string strB )
比较两个指定的 string 对象,并返回一个表示它们在排列顺序中相对位置的整数。该方法区分大小写。
2public static int Compare( string strA, string strB, bool ignoreCase )
比较两个指定的 string 对象,并返回一个表示它们在排列顺序中相对位置的整数。但是,如果布尔参数为真时,该方法不区分大小写。
3public static string Concat( string str0, string str1 )
连接两个 string 对象。
4public static string Concat( string str0, string str1, string str2 )
连接三个 string 对象。
5public static string Concat( string str0, string str1, string str2, string str3 )
连接四个 string 对象。
6public bool Contains( string value )
返回一个表示指定 string 对象是否出现在字符串中的值。
7public static string Copy( string str )
创建一个与指定字符串具有相同值的新的 String 对象。
8public void CopyTo( int sourceIndex, char[] destination, int destinationIndex, int count )
从 string 对象的指定位置开始复制指定数量的字符到 Unicode 字符数组中的指定位置。
9public bool EndsWith( string value )
判断 string 对象的结尾是否匹配指定的字符串。
10public bool Equals( string value )
判断当前的 string 对象是否与指定的 string 对象具有相同的值。
11public static bool Equals( string a, string b )
判断两个指定的 string 对象是否具有相同的值。
12public static string Format( string format, Object arg0 )
把指定字符串中一个或多个格式项替换为指定对象的字符串表示形式。
13public int IndexOf( char value )
返回指定 Unicode 字符在当前字符串中第一次出现的索引,索引从 0 开始。
14public int IndexOf( string value )
返回指定字符串在该实例中第一次出现的索引,索引从 0 开始。
15public int IndexOf( char value, int startIndex )
返回指定 Unicode 字符从该字符串中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
16public int IndexOf( string value, int startIndex )
返回指定字符串从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
17public int IndexOfAny( char[] anyOf )
返回某一个指定的 Unicode 字符数组中任意字符在该实例中第一次出现的索引,索引从 0 开始。
18public int IndexOfAny( char[] anyOf, int startIndex )
返回某一个指定的 Unicode 字符数组中任意字符从该实例中指定字符位置开始搜索第一次出现的索引,索引从 0 开始。
19public string Insert( int startIndex, string value )
返回一个新的字符串,其中,指定的字符串被插入在当前 string 对象的指定索引位置。
20public static bool IsNullOrEmpty( string value )
指示指定的字符串是否为 null 或者是否为一个空的字符串。
21public static string Join( string separator, params string[] value )
连接一个字符串数组中的所有元素,使用指定的分隔符分隔每个元素。
22public static string Join( string separator, string[] value, int startIndex, int count )
连接接一个字符串数组中的指定位置开始的指定元素,使用指定的分隔符分隔每个元素。
23public int LastIndexOf( char value )
返回指定 Unicode 字符在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
24public int LastIndexOf( string value )
返回指定字符串在当前 string 对象中最后一次出现的索引位置,索引从 0 开始。
25public string Remove( int startIndex )
移除当前实例中的所有字符,从指定位置开始,一直到最后一个位置为止,并返回字符串。
26public string Remove( int startIndex, int count )
从当前字符串的指定位置开始移除指定数量的字符,并返回字符串。
27public string Replace( char oldChar, char newChar )
把当前 string 对象中,所有指定的 Unicode 字符替换为另一个指定的 Unicode 字符,并返回新的字符串。
28public string Replace( string oldValue, string newValue )
把当前 string 对象中,所有指定的字符串替换为另一个指定的字符串,并返回新的字符串。
29public string[] Split( params char[] separator )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。
30public string[] Split( char[] separator, int count )
返回一个字符串数组,包含当前的 string 对象中的子字符串,子字符串是使用指定的 Unicode 字符数组中的元素进行分隔的。int 参数指定要返回的子字符串的最大数目。
31public bool StartsWith( string value )
判断字符串实例的开头是否匹配指定的字符串。
32public char[] ToCharArray()
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组。
33public char[] ToCharArray( int startIndex, int length )
返回一个带有当前 string 对象中所有字符的 Unicode 字符数组,从指定的索引开始,直到指定的长度为止。
34public string ToLower()
把字符串转换为小写并返回。
35public string ToUpper()
把字符串转换为大写并返回。
36public string Trim()
移除当前 String 对象中的所有前导空白字符和后置空白字符。

طريقة القائمة أعلاه ليست شاملة، يرجى زيارة مكتبة MSDN للحصول على قائمة كاملة من أساليب ومنشئ فئة سلسلة.

أمثلة

يوضح المثال التالي بعض من الأساليب المذكورة أعلاه:

مقارنة سلاسل

باستخدام نظام.

مساحة StringApplication
{
   الطبقة StringProg
   {
      ساكنة باطلة الرئيسية (سلسلة [] وسائط)
      {
         سلسلة str1 = "هذا هو اختبار".
         سلسلة str2 = "هذا هو النص".

         إذا (String.Compare (str1، str2) == 0)
         {
            Console.WriteLine (str1 + "و" + str2 + "متساوية.")؛
         }
         آخر
         {
            Console.WriteLine (str1 + "و" + str2 + "ليست على قدم المساواة.")؛
         }
         Console.ReadKey ()؛
      }
   }
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

هذا هو الاختبار وهذا هو النص ليست على قدم المساواة.

سلسلة تحتوي على سلسلة:

باستخدام نظام.

مساحة StringApplication
{
   الطبقة StringProg
   {
      ساكنة باطلة الرئيسية (سلسلة [] وسائط)
      {
         سلسلة شارع = "هذا هو اختبار".
         إذا (str.Contains ( "اختبار"))
         {
            ( "تم العثور على تسلسل 'اختبار'.") Console.WriteLine.
         }
         Console.ReadKey ()؛
      }
   }
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

تم العثور على 'اختبار' تسلسل.

الحصول على سلسلة فرعية:

using System; 
namespace StringApplication 
{
	class StringProg 
	{ 
		static void Main(string[] args) 
		{ 
			string str = "Last night I dreamt of San Pedro"; 
			Console.WriteLine(str); 
			string substr = str.Substring(23); 
			Console.WriteLine(substr); 
			Console.ReadKey() ; 
		} 
	} 
}

تشغيل المثال »

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

الليلة الماضية حلمت سان بيدرو
سان بيدرو

سلسلة الاتصال:

باستخدام نظام.

مساحة StringApplication
{
   الطبقة StringProg
   {
      ساكنة باطلة الرئيسية (سلسلة [] وسائط)
      {
         سلسلة [] starray = سلسلة جديدة [] { "أسفل الطريق الليالي المظلمة"،
         "والشمس تشرق كل يوم على قمة الجبل"،
         "أنا أخذت في رحلة على متن سفينة تبحر"
         "وعندما وصلت جامايكا"،
         "لقد تقدمت وقف"}؛

         سلسلة شارع = String.Join ( "\ ن"، starray)؛
         Console.WriteLine (شارع)؛
         Console.ReadKey ()؛
      }
   }
}

عندما يتم ترجمة التعليمات البرمجية أعلاه وتنفيذها، وتنتج النتائج التالية:

أسفل الطريق ليال مظلمة
وتشرق الشمس يوميا على قمة الجبل
أنا أخذت في رحلة على متن سفينة الإبحار
وعندما وصلت جامايكا
ولقد تقدمت توقف