Ma’ruza mashg`ulot uchun


Matndagi, biror qism matnni boshqa matnga o‘zgartirish


Download 0.85 Mb.
bet39/49
Sana19.06.2023
Hajmi0.85 Mb.
#1600219
1   ...   35   36   37   38   39   40   41   42   ...   49
Bog'liq
1-semestr maruzalar

Matndagi, biror qism matnni boshqa matnga o‘zgartirish uchun Replace() uslubiddan foydalaniladi.
static void Main(string[] args)
{
string s = "Hello, World, Hello";
Console.WriteLine(s.Replace("Hello", "World")); //natija "World, World, World"
Console.ReadLine();
}
Matndagi belgilarni char tipipdagi massivga o‘zlashtirish uchun ToCharArray() uslubidan foydalaniladi.
static void Main(string[] args) {
string s = "Hello, World";
char[] array = s.ToCharArray(); // Massiv elementlari – 'H', 'e', 'l', 'l'… ga teng bo‘ladi.
}
Matndagi ko‘rsatilgan belgi ishlatilgan joydan qism matnlarga ajratib uni massivga o‘zlashtirish uchun Split() uslubidan, massivdagi elementlarnbelgi qo‘yilgan holda bitta matnga yig‘ish uchun Join() foydalaniladi.
Misol:
static void Main(string[] args) {
string s = "Arsenal,Milan,Real Madrid,Barcelona";
string[] array = s.Split(',');
/* vergul qatnashgan joydan qism qatorlar ajratiladi, bunda massiv elementlari –
array[0]= "Arsenal"
array[1]= "Milan"
array[2]= "Real Madrid"
array[3]= "Barcelona" ga teng bo‘ladi.*/
}
Yuqorida keltirib o‘tilgan uslublardan foydalanilganda, asosiy matn o‘zgarmaydi, balki asosiy matndan foydalaniladi xolos. Asosiy matni o‘zgartirish uchun StringBuilder sinfining uslublaridan foydalaniladi.
Quyidagi listinglarda satrli kattaliklar bilan ishlashga misollar keltirilgan.
Listing 7.3. Shunday matn berilgan bo‘lsinki unda kamida 2 ta so‘z va har bir so‘z orasida kamida 2 tadan probel bor bo‘lsin!
*1) Berilgan matnning umumiy uzunligini aniqlang;
*2) matndagi boshlang‘ich holdagi probellar sonini aniqlang;
*3) so‘ngra matndagi har bir so‘z orasidagi probelni bittagacha qisqartiring.
*4) matnning har bir so‘zini massivga joylashtiring
*5) massivdagi elementlar sonini aniqlang.
* barcha natijalarni ekranga chiqaring;

using System;
using System.Text;
namespace stroka1{
class Program {
static void Main(string[] args) {
string matn;
l0:
Console.WriteLine("Shunday matn kiritingki unda kamida 2 so'z va \n har bir so'z orasida kamida 2 tada probel bor bo'lsin!");
matn = Console.ReadLine();
if (String.IsNullOrWhiteSpace(matn))
{
Console.WriteLine("Kiritiluvchi matn faqat bo'sh joy yoki probellardan tashkil topgan bo'lmasligi kerak!");
goto l0;
}
Console.WriteLine();
int joriy_probel = 0;
string yangi_matn=matn;
Console.WriteLine("Matnning uzunligi:{0}", matn.Length);
foreach (char i in matn)
if (i == ' ') joriy_probel++;
while (yangi_matn.IndexOf(" ") != -1)
yangi_matn = yangi_matn.Replace(" ", " ");
string [] massiv = yangi_matn.Split(' ');
Console.WriteLine("Matning joriy holidagi probellar soni:{0}", joriy_probel);
Console.WriteLine("Matnning qisqartirilgan holati:"+yangi_matn);
Console.WriteLine("Matnning qisqartirilgan holati uzunligi:" + yangi_matn.Length);
Console.WriteLine("Matn bo'lib joylashtirilgan massiv elementlari soni:{0}",massiv.Length);
for(int i=0;i
{
Console.WriteLine("massiv[{0}]=" + massiv[i], i);
}
Console.ReadKey();
}
}
}






Download 0.85 Mb.

Do'stlaringiz bilan baham:
1   ...   35   36   37   38   39   40   41   42   ...   49




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling