معالجة السلاسل

مكتمل

نصيحة

راجع علامة التبويب النص والصور لمزيد من التفاصيل!

النص هو أحد أكثر أنواع البيانات شيوعا في البرمجة. في C#، يتم تمثيل النص كسلسلة — سلسلة من الأحرف محاطة بعلامات اقتباس مزدوجة. يوفر C# العديد من الطرق المضمنة لمعالجة السلاسل وتنسيقها.

التسلسل (ضم السلاسل معا)

يمكنك ربط سلسلتين أو أكثر معا في سلسلة واحدة باستخدام + عامل التشغيل :

string first = "Hello";
string last = "world";
string message = first + ", " + last + "!";
Console.WriteLine(message);

الإخراج:

Hello, world!

في حين أن التسلسل يعمل بشكل رائع لمجموعات بسيطة، فإنه يمكن أن يصبح فوضويا عند محاولة خلط المتغيرات وعلامات الترقيم والمسافات معا.

طريقة أفضل: استنتاج السلسلة

الطريقة الأنظف والحديثة لدمج السلاسل والمتغيرات هي مع استنتاج السلسلة. لإنشاء هذا النوع من السلسلة، ضع علامة الدولار ($) مباشرة قبل عرض أسعار الفتح، وضع أي أسماء متغيرة داخل أقواس متعرجة {}:

string name = "Alex";
Console.WriteLine($"Hello, {name}!");

الإخراج:

Hello, Alex!

يمكنك محاولة تشغيل هذه التعليمة البرمجية بنفسك في محرر التعليمات البرمجية C#‎.

طريقة أكثر نظافة للجمع بين الإدخال والإخراج

استنتاج السلسلة يحل المشكلة التي رأيناها سابقا مع Console.ReadLine(). يمكنك الآن مزج النص والمتغيرات بسهولة:

string name = Console.ReadLine();
Console.WriteLine($"Hello, {name}! Nice to meet you.");

هذا أنظف بكثير من السلاسل مع +.

ملحوظة

إذا نسيت البادئة $ (على سبيل المثال، Console.WriteLine("Hello, {name}"))، لن تبدو C# داخل الأقواس - ستتم طباعتها {name} حرفيا على الشاشة.

أساليب السلسلة الشائعة

تحتوي سلاسل C# على العديد من الطرق المضمنة للعمليات الشائعة. لاستخدام أسلوب، اكتب اسم المتغير ونقطة واسم الأسلوب متبوعا بأقواس:

الطريقة ماذا تفعل مثَال النتيجة
.ToUpper() تحويل نص إلى أحرف كبيرة "hello".ToUpper() "HELLO"
.ToLower() تحويل نص إلى أحرف صغيرة "HELLO".ToLower() "hello"
.Replace(old, new) تبديل أحرف معينة "cat".Replace("c", "b") "bat"
.Length إرجاع عدد الأحرف "Alex".Length 4

مثال عملي

إليك كيفية استخدام هذه التقنيات معا:

Console.Write("What's your name? ");
string name = Console.ReadLine();
string greeting = $"Welcome, {name.ToUpper()}!";
Console.WriteLine(greeting);

إذا كان المستخدم يكتب alex، فإن الإخراج هو:

What's your name? alex
Welcome, ALEX!

لاحظ كيف .ToUpper() أن تحويل إدخال المستخدم إلى أحرف كبيرة، واستنتاج السلسلة جعل من السهل دمج كل شيء معا.