C# programlama dilinde en sık ihtiyaç duyduğumuz String metodlarından birisi de IndexOf() metodudur. IndexOf() metodu ile bir string içinde başka bir string ya da char ifadenin varsa kaçıncı karakterden itibaren başladığı buulabilir. IndexOf() metodu, aranan terimi bulamaması durumunda da -1 değerini döndürür ve bu sayede bir string'in içinde başka bir string/char ifadenin geçip geçmediğini tespit etmek için de kullanılabilir.
Not: String'lerde de dizilerde olduğu gibi ilk karakterin indeksi sıfırdır.
Örnek: IndexOf() kullanımına çeşitli örnekleri ve sonuçları aşağıdaki örnekte görebilirsiniz.
string yazi = "gözlerinin hastasıyım programlamanın ustasıyım";
Console.WriteLine(yazi.IndexOf("hasta")); //11
Console.WriteLine(yazi.IndexOf("g")); //0
Console.WriteLine(yazi.IndexOf('g')); //0
Console.WriteLine(yazi.IndexOf("ilaç")); //-1
Console.WriteLine(yazi.IndexOf("a")); //12
Not 2: IndexOf() metodunun 10 adet overload'u vardır. Örneğin istenilen karakterden başlanılarak arama yapmak gibi işlemler için de IndexOf() metodunu kullanabilirsiniz.
Önceki yazılarımdan bazıları için;
bkz: C# baştaki ve sondaki boşlukları silmek (trim)
bkz: C# String'leri Bölmek (substring)
bkz: C# implicit ve explicit dönüşümler nasıl yapılır?
bkz: C# ASCII kodlarını karakterlere dönüştürmek
bkz: (C# ve Asp.NET) String'in sadece ilk harfini büyük harf ile yazdırmak
bkz: (C# ve Asp.NET) Yazıları küçük harf ile yazdırmak