C# String Methodları – II (Replace, SubString, ToCharArray, Trim)


Giriş

Bu yazının 1.bölümünde (C# String Methodları – I) EndsWith-StartsWith, ToUpper-ToLower, IndexOf, PadLeft-PadRight, Remove methodlarını anlatmaya çalıştım. Bu yazımda da bahsetmek istediğim 5 tane daha string methodu var.

String method ları bizim sıkça kullanacağımız ve ihtiyaç duyacağımız methodlardır. Hepimizin şimdiye kadar aşağıdaki durumlar ile ya karşılaştık ya da karşılaşacağız;

  • String içerisindeki bir string i değiştirme,
  • String içerisinde belli bir yerden, belli bir sayı kadar karakter alma,
  • Bir string i karakterlerine ayırma,
  • String in başlangıcındaki ve/veya bitimindeki boşlukları silme,

Bu ve benzeri işlemleri yapmak için bu yazımda anlatacağım String Methodlarını kullanacağız. Bu yazımda anlatacağım Methodlar; Replace, SubString, ToCharArray, Trim

Hatırlatma ve Dikkat Edilmesi Gerekenler

Bu örneği C# dili ile .net 4.0 versiyonunda Visual Studio 2010 Ultimate programında yazıyorum.

Mantık Yürütme

Türkçe temelli dünyaca geçerli bir programlama dili geliştiremediğimiz için diğer dillerde, tabiki de ingilizce, geliştirilen programlama dillerini kullanıyoruz. Eğer biraz ingilizce bilginiz varsa methodları gördüğünüzde anlayabilir, açıklamalarına dikkat ederek kullanabilirsiniz. Hadi başlayalım.

Kodlama

*Replace

Kullanımı bazen oldukça işine yarabilir. String içerisinde bir string i başka bir string ile değiştirebilirsiniz veya string içerisinde karakteri(char) başka bir karakter ile değiştirebilirsiniz. İlk önce değiştireceğimiz stringi veya char ı daha sonrada değişlik için kullanacağımız stringi veya char ı yazıyoruz.

kelime "Buradaki tüm a harfleri büyük";
MessageBox.Show(kelime.Replace('a', 'A')); // tek tırnak ile tanımladık, yani char türünde, çıktı olarak "BurAdAki tüm A hArflari büyük"
 
kelime2 "C# %100 nesneye yönelimli bir programlama dilidir. ";
MessageBox.Show(kelime2.Replace("neseneye yönelimli", "nesne tabanlı")); // ekran çıktısı: "C# %100 nesne tabanlı bir programlama dilidir"


*SubString

Benim çok sevdiğim ve kullanışını oldukça başarılı bulduğum bir method. String içerisinde belli bir karakterden sonraki bölümü seçmemiz yarar. 2 türlü kullanımı vardır;

1. Kullanım

 

string kelime = "Mahmut Can Sözeri"; //Burada "M" 0.karakterdir. Bunu unutmamak gerekiyor
MessageBox.Show(kelime.Substring(7,3)); //Ekran çıktısı olarak "Can" ı verecektir. 7.karakterden başlayarak 3tane seçim yapar.

Duzeltme: Yukaridaki SubString(6,3) iken sonuc " Ca" dir. 

2. Kullanım

string kelime = "Mahmut Can Sözeri";
MessageBox.Show(kelime.Substring(6)); //Ekran çıktısı olarak "Can Sözeri" yi verecektir. 6.karakterden başlayarak son karaktere kadar seçim yapar.

*ToCharArray

String içeriğini karaktere ayırır. 2 türlü kullanımı vardır;

1.Kullanım

char[] karakterler = kelime.ToCharArray(); // Anahtar bölüm işte burası, burada karakterler adında char türünde bir dizi oluşturuluyor ve içerisine atılıyor. Yani aşağıdaki foreach yerine karakterler[sayi] diyerek ulaşabilirsiniz.
foreach (char karakter in karakterler) // Foreach bu tarz işlemler için tam anlamıyla biçilmiş kaftandır. Örnekte iyi olacağını düşünüyorum
{
listBox1.Items.Add(karakter); // Bu bölümde bulunan karakterleri listbox1 a sırayla ekliyor. Yani ekran çıktısı olarak sırasıyla alt alta;M,A,H,M,U,T, ,C,A,N, ,S,Ö,Z,E,R,İ dir. Boşluklarında dahil olduğunu unutmayalım. Burada bir if kontrolü ile boşlukları eklemeyebiliriz.
}

2.Kullanım

char[] karakterler = kelime.ToCharArray(3,5); //SubStringteki mantık ile çalışır yani 3.index numarasından başlar ve daha sonraki 5 karakteri alır.

*Trim

Özellikle web uygulamalarında çok yaygın şekilde kullanılan bir uygulamadır trim. Bir string in başlangcındaki ve bitişindeki boşlukları temizler ve bize sadece yazılan içeriği yani anlamlı bölümü verir. TrimEnd ve TrimStart gibi methodlardan mevcuttur. Bunları burada anlatmayacağım. Uygulamalar yaptığımda eğer gerekirse kullanırım ve bunları paylaşırım.

Kullanım

string kelime = "     Mahmut Can Sözeri       ";
MessageBox.Show(kelime.Trim()); //Ekran çıktısı olarak "Mahmut Can Sözeri" yi verecektir. Kenardaki boşluları almayacaktır. Bu örneği iyi anlamak için önce boşluklu halinin Length ile uzunluğunu alıp daha sonra bu işlem sonucunda aldığınızda aradaki farkı göreceksiniz.

İndirme

İndirme linkini bir kaç güne aktif edeceğim.

Umarım faydalı olmuştur.

İyi kodlamalar

About these ads

, , , ,

  1. #1 by c# cı smy on April 16, 2012 - 8:34 pm

    gerçekten çok yararlı oldu emeğiniz için teşekkür ederim :D

  2. #3 by Obs on June 10, 2012 - 1:50 pm

    Bugünkü sınavımda hayat kurtarıcı oldu bu bilgiler.Teşekkürler :)

  3. #4 by Emrah ipekyol on August 20, 2012 - 3:34 pm

    Teşekkürler emeğinize sağlık.

  4. #5 by Cenk Eren on September 5, 2012 - 10:52 pm

    Sade ve anlaşılır anlatım. Gerçekten işime yaradı.Teşekkürler

    • #6 by ragıp on March 26, 2014 - 7:26 pm

      ne işine yaradı gözünü sevdüğüm bi halta yaramadı bu kodlar

  5. #7 by furkan on September 22, 2012 - 6:02 pm

    Yazının yarısına gelmede bu sitenin yer imlerimin en başında yer alması gerektiğini anladım :D

    Çok teşekkür ederim paylaşımlarınız gayet güzel ve başaraılı.

  6. #9 by elif on March 25, 2013 - 8:08 pm

    string kelime = “Mahmut Can Sözeri”;
    MessageBox.Show(kelime.Substring(6,3)); bunu kimse denedemidi mi ? çıktısı ” ca” şeklinde oluyo

    • #10 by Mahmut Can Sozeri on May 3, 2013 - 9:02 am

      Elif Hanim merhaba,

      Evet soylediginiz gibi ciktisi ” Ca” seklinde olmaktadir. …kelime.SubString(7,3) olarak calistirdigimizda sonuc “Can” olmaktadir. Burada 6. index teki bosluk alinan 1.karakterdir. “C” ve “a” da diger 2 karakter.

      Tesekkurler ilginiz icin

  7. #11 by Örümcek Adam on December 8, 2013 - 9:47 am

    Yararlı. Teşekkürler

  8. #12 by Murat on December 26, 2013 - 12:16 am

    Bu sadece ve güzel anlatımın için teşekkür ederim, çok yararlı olmuş.

  1. 2012 Yılında Blogumun İle İlgili Rakamlar « Mahmut Can Sözeri

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 813 other followers