Visual C# String Metotları - II

Split( ) Metodu - Metni Parçalara Ayırma

Bir metni belirtilen bir karakter kullanılarak parçalara ayıran ve bu parçalar ile string türünde bir dizi oluşturan metottur.

string metin = "Ahmet,Ali,Ayşe,Aslı,Arzu";
string[] isimler = metin.Split(','); 
 
foreach (string isim in isimler)
{
     label1.Text += isim + "\n";
}

Yukarıdaki örnekte metin isimli değişken "," karakterlerinden parçalanmış ve bu parçalar isimler adlı diziye aktarılmıştır. Ardından da foreach döngüsü ile dizi elemanları label1'e yazdırılmıştır.

Parçalara ayırmak için tek bir karakter yerine bir karakter dizisi de kullanabiliriz. Alttaki örnekte parçalamada kullanılacak karakterler bir diziye alınmış ve split metodu çağırılırken bu dizi kullanılmıştır. Bu sayede ifadeler dizisindeki her eleman metnin bölünmesinde kullanılacaktır.

string metin = "29 Ekim 1923 20:30";
 
char[] ifadeler = { '/', ".", ' ', ':' }; // bu ifadelerden herbirinde metin bölünecek
 
string[] parcalar = metin.Split( ifadeler ); 

Replace( ) Metodu - Metin Bulma ve Değiştirme

Bir string içerisinde belli bir ifadenin başka bir ifade ile değiştirilmesini sağlar.

Replace metodunun kullanımına örnek;

label1.Text = a.Replace( "ç", "c" );

mesaj = mesaj.Replace("hakaret" , "x" );

Substring( ) Metodu - Metnin Parçasını Alma

Bir string ifadenin sadece istenilen kısmını almaya yarar.

İnt türünde iki parametre kullanılır. Belirtilen index numarasındaki karakterden başlayarak, belirtilen uzunluktaki metin parçasını almamızı sağlar.

İndex numaralarının her zaman 0'dan başladığını unutmayalım.

Substring örneği;

string a = textBox1.Text;

if ( a.Length >= 5 ) label1.Text = a.Substring(0, 5);
else label1.Text = a;

Yukarıda a.Substring( 0,5 ) kısmı, a değişkeninin ilk 5 karakterini elde etmemizi sağlar.

if kullanarak a değişkeninin uzunluğunu başlangıçta kontrol ettik çünkü a değişkeni 5 karakterden kısayken 5 karakter almaya çalışmamız hataya sebep olacaktır.

Substring metodu kullanılırken ikinci parametre belirtilmezse, belirtilen yerden sonuna kadarki kısım alınır.

Örneğin aşağıdaki örnekte a değişkeninin 3 nolu karakterinden sonuna kadarki kısım alınmıştır.

label1.Text = a.Substring(3);

Contains( ) Metodu- Metin Arama

Bir string içerisinde karakter veya ifade aramaya yarar. Aranan ifade string içerisinde geçiyorsa True, geçmiyorsa False değeri döndürür.

Contains kullanımı örneği:

string a = textBox1.Text;
string b = textBox2.Text;

if (a.Contains(b)) label1.Text = "Aranan bulundu";
else label1.Text = "Bulunamadı";

Yukarıdaki örnekte a değişkeni içerisinde b değişkeninin geçip geçmediği sorgulanmıştır.

EndsWith( ) Metodu

Bir string ifadenin başka bir ifade ile bitip bitmediğini kontrol eder. Metin belirtilen ifade ile bitiyorsa true, bitmiyorsa false değeri döndürür.

string a = textBox1.Text;
string b = textBox2.Text;
 
if (a.EndsWith(b)) label1.Text = "Sonunda var";
else label1.Text = "Sonunda yok";

Yukarıdaki örnekte a değişkeninin b değişkeni ile başlayıp başlamadığı sorgulanmıştır.

if (a.EndsWith("t")) label1.Text = "t ile bitiyor";
else label1.Text = "t ile bitmiyor";

Bu örnekte ise a değişkeninin "t" harfi ile bitip bitmediği sorgulanmıştır.

StartsWith( ) Metodu

Bir string ifade, başka bir ifade ile başlayıp başlamadığını anlamamızı sağlar. 

string a = textBox1.Text;
string b = textBox2.Text;
 
if (a.StartsWith(b)) label1.Text = "İstenen başlangıca sahip";
else label1.Text = "İstenen başlangıca sahip değil";

Örnek: Bir metin "a" harfi ile başlayıp "a" harfi ile bitiyor mu, şu şekilde sorgulayabiliriz:

if (a.StartsWith("a") && a.EndsWith("a") )
    label1.Text = "A ile başlayıp bitiyor";
else label1.Text = "A ile başlamıyor veya bitmiyor";

IndexOf( ) Metodu - Aranan Metnin İndex Numarasını Bulma

Bir string içerisinde başka bir karakter ya da ifadeyi aramamızı sağlar.

Contains metodundan farklı olarak ifade bulunursa, başlangıç indeks numarasını verir.

İfade bulunamaz ise sonuç olarak -1 döndürür.

İlk karakterin index numarası 0'dır.

Eğer aranan ifade birden çok defa geçiyorsa ilk bulduğunun numarasını verir.

IndexOf kullanım örneği:

string a = textBox1.Text;
string b = textBox2.Text;
 
if ( a.IndexOf (b)  != -1)
label1.Text = ( a.IndexOf (b) + 1).ToString( ) + ". sırada bulundu";
else
label1.Text = "Bulunamadı";

Yukarıda label1'e bulunan ifadenin başlangıcı yazdırılırken 1 artırılarak yazdırmamızın sebebi ilk karakterin numarasının 0 olmasıdır.

Aramanın belli bir yerden sonra yapılmasını istersek IndexOf metodunu şu şekilde de kullanabiliriz.

if ( a.IndexOf ( "z", 3 ) ) ....

Yukarıdaki kullanımda a değişkeninin 3 numaralı karakterinden itibaren z harfini aramış olduk.

LastIndexOf( ) Metodu - Aranan Metnin İndex Numarasını Bulma

IndexOf metodu ile aynı işi yapar. Ancak aranan ifade birden çok defa geçiyorsa en son bulunanın karakter numarasını verir.

if ( a.IndexOf (b) != -1)
label1.Text = ( a.LastIndexOf (b)+1 ).ToString() + ". sırada bulundu";
else
label1.Text = "Bulunamadı";

Insert( ) Metodu

Bir metin içerisine, başka bir metni, belirtilen yerden başlayarak eklememizi sağlar.

Insert metodunun kullanımı;

metin1.Insert ( metin2 , indexNo); şeklindedir. Bu tür bir kullanımda metin2 değişkeni, metin1 içerisine verilen index numarasından başlayacak şekilde eklenir.

label1.Text = a.Insert(3, b);

Örnekte b değişkenindeki metin, a değişkeni içerisine 3 numaralı karakterden başlayarak yapıştırılır.

PadLeft( ) Metodu

Metnin istenilen karakter sayısı kadar yer kaplamasını sağlar. İki farklı kullanımı vardır.

label1.Text = a.PadLeft( 5 );

Yukarıdaki gibi kullanılırsa 5 karakter yer kaplamasını sağlamak için metnin önüne boşluk ekler.

Boşluk yerine başka bir karakter eklemesini istersek şu şekilde kullanabiliriz.

label1.Text = a.PadLeft( 5, '0' );

Burada ise toplamda 5 karakter yer kaplayacağını ve karakter sayısını 5'e tamamlamak için önüne 0 konulacağını belirtmiş olduk.

Remove( ) Metodu

String bir ifadenin belirtilen kısmını silerek atmaya yarar. Dışarıdan bir veya iki parametre alabilir.

label1.Text = a.Remove(3);

Yukarıdaki örnekte a değişkeninin 3 nolu karakterinden başlayarak sonuna kadarki tüm karakterleri siler.

label1.Text = a.Remove(3, 2);

Bu örnekte ise 3 nolu karakterden başlayarak toplam 2 karakteri siler. Yani 3 ve 4 nolu karakterler silinmiş olur.

ToLower( ) ve ToUpper( ) Metotları

ToLower metodu birlikte çağrıldığı string ifadeyi tamamıyla küçük harf ile göstermeye yarar. ToUpper metodu ise tamamını büyük harf ile göstermeye yarar.

string a = textBox1.Text;
 
label1.Text = a.ToLower( ) + "\n" + a.ToUpper( );

Yukarıdaki örnekte a değişkeni önce küçük, sonra da büyük harfler ile labele yazdırılmıştır.

 

c# string metotları, c# metnin parçasını alma, metin içinden istenilen kısmı alma, metin arama, metnin ne ile bitip bitmediğini anlama, metnin içine metin ekleme

KONU İLE İLGİLİ ÖRNEKLER

Bu konu ile ilgili örnek bulunmamaktadır.



YORUMLAR




17042  kez okundu.

Online Kullanıcı Sayısı 3748



Visual-C-sharp-String-Metotları-II