دانلود نرم افزار - آموزش سی شارپ
دانلود نرم افزار - آموزش سی شارپ

دانلود نرم افزار - آموزش سی شارپ

رشته ها در سی شارپ شماره 6

پست 6 : تقسیم‌بندی رشته‌ها با Split

هدف:  آموزش متد Split  برای تبدیل یک رشته به آرایه‌ای از رشته‌های کوچکتر.

محتوا:  یکی از عملیات رایج با رشته‌ها، تقسیم‌بندی آن‌ها به بخش‌های کوچکتر است. مثلاً ، اگر یک رشته شامل کلمات یا داده‌های جدا شده با کاما دارید، می‌توانید آن را به یک آرایه تبدیل کنید. در C#، متد Split  این کار را انجام می‌دهد.

  • متد Split :
    • رشته را بر اساس یک یا چند جداکننده (delimiter)  به آرایه‌ای از رشته‌ها تقسیم می‌کند.
    • جداکننده می‌تواند یک کاراکتر (مثل ',') یا حتی یک رشته باشد.
    • نسخه‌های مختلف Split  امکان کنترل دقیق‌تر (مثل حذف رشته‌های خالی) را فراهم می‌کنند.

مثال کد:

// تقسیم با یک جداکننده

string fruits = "apple,banana,orange";

string[] fruitArray = fruits.Split(',');

Console.WriteLine("میوه‌ها:");

foreach (string fruit in fruitArray)

{

    Console.WriteLine(fruit);

}

// خروجی:

// apple

// banana

// orange

 

// تقسیم با چند جداکننده

string dateTime = "2025-03-13 14:30";

string[] parts = dateTime.Split('-', ' ');

Console.WriteLine("بخش‌های تاریخ و زمان:");

foreach (string part in parts)

{

    Console.WriteLine(part);

}

// خروجی:

// 2025

// 03

// 13

// 14:30

 

// حذف رشته‌های خالی

string messyText = "one,,two, ,three";

string[] cleanArray = messyText.Split(',', StringSplitOptions.RemoveEmptyEntries);

Console.WriteLine("بدون رشته‌های خالی:");

foreach (string item in cleanArray)

{

    Console.WriteLine(item);

}

// خروجی:

// one

// two

// three

نکات کلیدی:

  • جداکننده‌ها در نتیجه نهایی ظاهر نمی‌شوند (مثلاً ',' حذف می‌شود).
  • اگر جداکننده در رشته وجود نداشته باشد، کل رشته به عنوان یک عنصر آرایه برمی‌گردد.
  • از StringSplitOptions.RemoveEmptyEntries  برای حذف بخش‌های خالی (مثل "") استفاده کنید.
  • برای داده‌های پیچیده((مثل فایل CSV)، ممکن است نیاز به ابزارهای پیشرفته‌تر (مثل کتابخانه‌های CSV) باشد، که بعداً بررسی می‌کنیم.

·         ارتباط با پست بعدی:  حالا که یاد گرفتیم رشته‌ها را تقسیم کنیم، در پست بعدی به جستجو در رشته‌ها می‌پردازیم تا ببینیم چگونه می‌توانیم یک کلمه یا کاراکتر خاص را پیدا کنیم.

 

رشته ها در سی شارپ شماره 5

پست  5 : تغییر حروف بزرگ و کوچک

هدف:  آموزش تبدیل حروف رشته به بزرگ یا کوچک.

محتوا:  گاهی نیاز است حروف یک رشته را به بزرگ یا کوچک تبدیل کنیم، مثلاً برای استانداردسازی ورودی کاربر یا نمایش متن. C# دو متد اصلی دارد:

  • ToUpper :
    • همه حروف را به بزرگ تبدیل می‌کند.
  • ToLower :
    • همه حروف را به کوچک تبدیل می‌کند.

مثال کد:

string text = "Hello World";

string upper = text.ToUpper();

Console.WriteLine(upper); // خروجی: HELLO WORLD

string lower = text.ToLower();

Console.WriteLine(lower); // خروجی: hello world

 

// ترکیب با ورودی

Console.WriteLine("نام خود را وارد کنید:");

string input = Console.ReadLine();

Console.WriteLine($"نام به صورت بزرگ: {input.ToUpper()}");

نکات کلیدی:

  • این متدها روی کاراکترهای غیرالفبایی (مثل اعداد یا علامت‌ها) تأثیری ندارند.
  • برای زبان‌های خاص (مثل ترکی که "i" و "I" رفتار متفاوتی دارند) ، ممکن است نیاز به تنظیمات فرهنگ باشد (در پست‌های بعدی توضیح داده می‌شود).
  • خروجی این متدها یک رشته جدید است، چون رشته‌ها immutable هستند.

رشته ها در سی شارپ شماره 3

پست 3 : الحاق رشته‌ها (Concatenation)

هدف:  آموزش روش‌های مختلف ترکیب رشته‌ها.

محتوا:  یکی از عملیات رایج با رشته‌ها، الحاق یا ترکیب آن‌هاست. در C# چند روش برای این کار وجود دارد:

عملگر + :  ساده‌ترین روش برای اتصال رشته‌ها.

روش string.Concat :  رشته‌ها را بدون اضافه کردن فاصله ترکیب می‌کند.

رشته‌های interpolated (با $ ) : روشی خواناتر برای ترکیب متغیرها و متن.

مثال:

string firstName = "Ali";

string lastName = "Rezaei";

string fullName1 = firstName + " " + lastName;

Console.WriteLine(fullName1);

string fullName2 = string.Concat(firstName, " ", lastName);

Console.WriteLine(fullName2);

string fullName3 = $"{firstName} {lastName}";

Console.WriteLine(fullName3);

نکات کلیدی:

  • عملگر +  ساده است، اما برای عملیات زیاد ممکن است کند باشد (در پست‌های بعدی توضیح داده می‌شود).
  • رشته‌های interpolated  خواناترند و برای ترکیب متغیرها توصیه می‌شوند.
  • string.Concat  برای ترکیب تعداد زیادی رشته مناسب است

رشته ها در سی شارپ شماره 2

پست 2 : دسترسی به کاراکترها و طول رشته

هدف یادگیری دسترسی به کاراکترهای خاص و محاسبه طول رشته.

محتوا رشته از تعدادی کاراکتر تشکیل شده که می‌توانید به کاراکترهای خاص یک رشته دسترسی پیدا کنید یا تعداد کاراکترهای آن را بشمارید.

دسترسی به کاراکترها:

با استفاده از اندیس ([]) می‌توانید یک کاراکتر خاص را بخوانید.

اندیس از 0 شروع می‌شود.

طول رشته: خاصیت Length  تعداد کاراکترهای رشته را برمی‌گرداند.

مثال:

string text = "Reza";

Console.WriteLine(text[0]); 

Console.WriteLine(text[3]); 

int length = text.Length;

Console.WriteLine($"LS: {length}"); 

string empty = "";

Console.WriteLine($"LES: {empty.Length}"); 

نکات کلیدی:

اگر اندیسی خارج از محدوده باشد (مثلاً text[10]  برای رشته 4 کاراکتری)، خطای IndexOutOfRangeException  رخ می‌دهد.

Length  برای بررسی خالی بودن رشته مفید است.

دلیل اینکه می‌توانیم در C# از رشته (string) با براکت و اندیس (مثل text[0] ) برای دسترسی به حروف استفاده کنیم، به علت این است که رشته ها در C# به‌صورت آرایه‌ای از کاراکترها پیاده‌سازی می شوند . در C#، یک string  در اصل یک مجموعه از کاراکترها (char) است که به‌صورت پشت‌سرهم در حافظه ذخیره می‌شوند.

رشته‌های یونیکد (مثل اموجی‌ها) ممکن است نیاز به توجه خاصی داشته باشند (در پست‌های بعدی بررسی می‌شود).