
Bu dersimizde de çok stirng işelemelrinin büyük bölümünü işlediğimiz konumuzu işlemeye devam edeceğiz .
Bir önceki dersin son kısmına bakmışsanız eğer son kısımda bir sayısal dönüşüm tekniğinden bahsetmiştik .
Sayısal tiplere dönüşümler bir yazılımcı veya mühendisin bilmesi gereken ana konulardan biridir.
Int.TryParse Metodu Nedir? Nasıl kullanılır?
CharIsDigit metodunda asıl gerçekleştirdiğimiz şuydu string değerinin ilk karakterini alıp rakam olup olmadığını kontrol edip ona göre işlemimizi devam ettiriyorduk. Fakat Int.TryParse metodunu kullandığımızda ise tüm string değeri tartıp ona sayısal bir ifadeye çevrilip çevrilmediğine bakar eğer çevrilirse dışarıya bir int değişkeni verip true cinsinde bir yanıt verir.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// Int.TryParse Metodu Console.WriteLine("Deneme String giriniz."); string a = Console.ReadLine(); int c; if (int.TryParse(a,out c)==true) { Console.WriteLine("Sayısal İfadedir"); } else { Console.WriteLine("Sayısal ifade değildir"); } Console.WriteLine("Çıkmak için bir tula basınız"); Console.ReadLine(); |
Bu şekilde basit bir kullanımı vardır. Aynı zamanda kendisi string değişkenini int değişkenine çevrilmesi durumunda bunu çevirmektedir.
1 |
(int.TryParse(a,out c)==true) |
Burada c değişkeni çıkış integer değeridir. Anlaşılacağı gibi bu metodu kullanmanız durumunda program hatalarından kurtulmanız mümkündür.
String Bölme İşlemleri
Bu kısımda nasıl string bölme işlemleri yaptığımızı göstereceğiz. Burada asıl mesele, verilen birleşik string değeri ayrıştırmak ve gerekirse ayrıştırılan string değerleri üzerinden işlem yapabilmektir. Örneğin bir metinde isim aradığınızda o metindeki isimleri alıp ve liste haline getirebilme o isim üzerinden detaylandırma ve kategorizelendirme yapabilme yetenekleri bu yolla yapılır.
Split (Bölme) Operatörü Nedir? Ne İçin Kullanılır?
Bu operatör birleşik bir string değerli metni kesmemize yarayan bir operatördür. Bu operatör ile toplam kelime sayısı sayılabilir, aranan bir ifadenin kolaylıkla indexlenebileceği bir hale getirir.
1 2 3 4 5 6 7 |
// Bölme İşlemleri string metnim = "Ali,Mehmet,Muzakkir,Şehmuz"; // Bir strin ifadesi string[] isimler = metnim.Split(','); // buradaki , ifadesi isteğe bağlıdır. İstediğiniz operatörle ayırabilmeniz mümkün . foreach (var item in isimler) { Console.WriteLine(item); } |
Yaptığımız örnekte tek bir string ifadesi içinde olan karakterleri ayırmayı kolay bir biçimde göstermiş olduk. Burada tek string ifadesinden karakterleri ayırıp bir dizi string ifadesine atadık. Ayırma karakteri olarak virgül seçtik siz isterseniz kendiniz ayrı bir ayırma karakter seçebilirsiniz. İstediğiniz taktirde bu konuda kendi örneklerinizi geliştirebilirsiniz.
String Birleştirme İşlemleri
Buradaki işlem string bölme işlemlerinde yaptığımız işlemlerin tam tersini yapıyoruz. Yani aslında ayrı ayrı bir halde bulunan veya dizi halinde bulunan ifadeleri tek bir string ifadesi ile birleştirebiliyoruz.
Join (Birleştirme) Operatörü Nedir? Ne İçin Kullanılır?
Bu işlem verilen string dizisi içerisindeki değerleri birleştirmeye yarayan operatördür.
Bir örnekle açıklayacak olursak aşağıdaki gibi olacaktır.
1 2 3 4 |
// String Birleştirme İşlemeleri string[] isimler = { "Ali", "Mehmet", "Muzakkir", "Şehmuz"}; string metin = String.Join(" ",isimler); Console.WriteLine(metin); |
Karakter Değiştirme
Bu kısımda verdiğimiz string ifadesi içerisinde olan herhangi istediğimiz bir karakteri değiştirmeye yarayan işlemleri yapacağız. Bu inci sözlükte siz küfür yazdığınızda kelimeyi düzeltip gönderiye yazmasına benzer. Bu metotla hep tekrarlanan kelime ve karakterleri ayrı bir ifade ile değiştirebilmeniz mümkündür.
Replace Operatörü Nedir? Nasıl Kullanılır?
Replace operatörü verilen metin içerisinde belirlenmiş karakter bulunması halinde onu bizim programda belirlediğimiz ifade ile değiştirmeye yarar. Siz notepad ile text yazdığınızda ve değiştir menüsünden bu karakterleri değiştir dediğiniz ifadede kullanılan kod aslında budur.
1 2 3 4 5 6 7 8 9 10 11 |
// Karakter Değişme İşlemeleri Console.WriteLine("Lütfen metin giriniz:"); string metin = Console.ReadLine(); Console.WriteLine("Değiştirilmesini istediğiniz ifadeyi giriniz:"); string eski = Console.ReadLine(); Console.WriteLine("Yeni İfadeyi Giriniz: "); string yeni = Console.ReadLine(); string metin2 = metin.Replace(eski, yeni); Console.WriteLine(metin); Console.WriteLine("Yeni Metin \n"); Console.WriteLine(metin2); |
Vermiş olduğum örneğe dikkat edecekseniz örnek siz bir metin girdikten sonra ve sonrasında metin içerisinde bulunan eski ifadeyi yeni ifadeler ile değiştiriliyor.
String Biçimlendirme
String biçimlendirme işleminde bizim ekrana yazmak istediğimiz ifadelerin içinde değişiklik yapabiliyoruz. Daha önce ekrana yazdığımız ifadelerde string ifadesine {0} {1} gibi ifadeler ekleyebiliyoruz. Bunun yanında tarih zaman ekleyebiliyoruz.
1 2 3 4 5 6 7 8 9 |
// String Biçimlendirme Console.Write("Adınız: "); string ad = Console.ReadLine(); Console.Write("Soyadınız: "); string soyad = Console.ReadLine(); string mesaj = String.Format("Merhaba {0} {1} saat {2:t} gün {2:d}", ad, soyad,DateTime.Now); Console.WriteLine(mesaj); Console.ReadLine(); |
Tabi para birimi eklenmesi de olabilir fakat bazı Windows sürümlerinde bu özellik mümkün olmamaktadır. Bunun yerine ifadeyi kendiniz Windows’tan almayıp da kendiniz girmeniz daha etkilidir.
Bir de bunların yanında string işlemlerini kolaylıkla yapabileceğiniz StringBuilder’i de kullanabilirsiniz.
StringBuilder İşlemleri
StringBuilder işlemleri string işlemlerinin toplu halde olduğu bir kodlama grubudur. String işlemeleri kendi içinde işlemeleri yapılabilmekte ve bu işlemeler tek çatı altında yapılabilmektedirler.
Yani stringin içinde kaç değer sileceğinizi kaç değer atayacağını ve bu tür işlemleri kolaylıklar yapabilirsiniz.
Tabi bizim anlattığımızın dışında bir sürü uygulama olmakla beraber öğretme açısından biraz üstel bir biçimde irdelemek istedim.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
// String Builder İşlemeleri StringBuilder islem = new StringBuilder(); islem.Append("eklemee"); // Verilen islem stringine ekleme yapar islem.Append(" böyle yapılır"); islem.AppendFormat(" aynı ekleme yaptım"); // Append ile aynı işlem yapar islem.AppendLine("sıfırıncı satıra yazı ekledim"); // 0. satırdan başlar islem.AppendLine("satır eklemem böyle yapılır"); // AppendLine satır ekler islem.Remove(6, 1); // 6 başlangıç karakteri , 1 de 6 dan sonra kaldırılacak karakter sayısı Console.WriteLine(islem); int a = islem.Length; // Karakter sayısı Uzunluğunu bir int değişkenine atadık. Console.WriteLine("String karakter sayısı {0}", a); // String içeriğindeki karakter sayısı islem.Clear(); // String içini boşalttım a = islem.Length; Console.WriteLine("String karakter sayısı {0}",a); Console.WriteLine(islem); // Bunu yazdığımızda ekranda bir değer belirmeyecektir , fakat öğrenmeniz için göstermek istedim. Console.Read(); |
Append İşlemi Nedir? Nasıl Kullanılır?
Bu işlem StringBuilder içinde en çok kullanılan işlemlerden birisidir. Burada asıl amaç stringin içine bizim belirlediğimiz değeri eklemektir. Yani yukarıdaki kodu inceleyecek olursanız Append işlemin nasıl kullanıldığını bir kısım hatırınızda kalacaktır.
AppendFormat İşlemi
Bu işlem de Append işlemi ile aynı görevi yapabilmektedir. Doğrusu daha pek bir işlevini keşfetmediğim bir işlem, çünkü denemelerimden Append ile aynı sonucu aldım.
Remove İşlemi Nedir? Nasıl Yapılır?
Bu işlem de StringBuilder işlemi içerisinde yer alan seçili karakter sayısından başlayarak istediğimiz karakter sayısını belirlenen string değeri içinden silmeye yarar.
Clear İşlemi Nedir? Nasıl Yapılır ?
Belirlenen string içindeki karakterleri temizler örnekte olduğu gibi .
Length İşlemi Nedir? Nasıl Yapılır?
Bu işlem aslında sadece StringBuilder işlemlerinde kullanabileceğimiz işlemlerden değil bunun dışında da kullanabileceğimiz bir karakter sayısı belirleme işlemidir.
StyringBuilder çoğu işlemi kolaylıkla yapabilmemize olanak sağlar, böylelikle istediğiniz taktirde kullanabilirsiniz.
Bu anlatımın da sonuna geldik. Console uygulamalarını yakın zamanda bitirmeyi düşünüyorum. Tabi ki bu burada bitti demek değildir. İstediğiniz zaman soru sorabilirsiniz.
Bununla berber öğrenmek isteyen arkadaşlarınıza bloğu önerebilirsiniz.
İyi kalın…