String’te (Yazıda) Arama Yapma C#.Net Ders 37
Daha fazla bilgi için : www.gorselprogramlama.com
IndexOf: String ifadelere ait bir özelliktir.Bu özellik string olarak tanımlanmış bir değişken,textbox,label vb nesnelere uygulanabilir.String içinde arama işlemi baştan başlayarak yapar.3 tür kullanımı vardır.
Kullanım 1 : Belirlenen karakterin veya stringin aranmasını sağlar.Eğer var ise geriye sıra numarasını , yok ise -1 döndürür.stringlerde 1.karakterin sıra numarası 0’dır.
IndexOf(Aranan string veya karakter)
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{//Daha fazla bilgi için : www.gorselprogramlama.com
label3.Text= textBox1.Text.IndexOf(textBox2.Text).ToString();
}
[/code]


Kullanım 2 : Belirlenen karakterin veya stringin aranmasını sağlar.Eğer var ise geriye sıra numarasını , yok ise -1 döndürür.stringlerde 1.karakterin sıra numarası 0’dır.
IndexOf(Aranan string veya karakter,Kaçıncı karakterden itibaren)
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{
label3.Text = textBox1.Text.IndexOf(textBox2.Text, int.Parse(textBox3.Text),).ToString();
}//Daha fazla bilgi için : www.gorselprogramlama.com
[/code]

Kullanım 3 : Belirlenen karakterin veya stringin aranmasını sağlar.Eğer var ise geriye sıra numarasını , yok ise -1 döndürür.stringlerde 1.karakterin sıra numarası 0’dır.
IndexOf(Aranan string veya karakter,Kaçıncı karakterden itibaren,Kaç karakter)
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{
label3.Text = textBox1.Text.IndexOf(textBox2.Text, int.Parse(textBox3.Text), int.Parse(textBox4.Text)).ToString();
}
//Daha fazla bilgi için : www.gorselprogramlama.com
[/code]

Not 1: Eğer arama işlemini baştan başlayarak değilde sondan başlatarak yapmak istiyorsanız IndexOf yerine LastIndexOf kullanmalısınız.
Not 2 : Arama işlemini birden fazla karakter ile yapabiliriz.Arama işlemini baştan başlayarak yapmak için IndexOfAny , sondan başlayarak yapmak için LastIndexOfAny kullanılır.Bir örnek ile konuya açıklık getirelim.
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{//Daha fazla bilgi için : www.gorselprogramlama.com
char[] c={‘l’,’r’,’z’};
label3.Text = textBox1.Text.IndexOfAny(c).ToString();
}
[/code]

StartsWith : String ifadelere ait bir özelliktir.Bu özellik string olarak tanımlanmış bir değişken,textbox,label vb nesnelere uygulanabilir.Arama işlemini IndexOf veya LastIndexOf gibi string içinde değilde sadece başına bakarak yapar.
Kullanım : Eğer var ise geriye True , yok ise False döndürür.
StartsWith(Aranan string )
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{
label3.Text=textBox1.Text.StartsWith(textBox2.Text).ToString();
}//Daha fazla bilgi için : www.gorselprogramlama.com
[/code]


EndsWith : String ifadelere ait bir özelliktir.Bu özellik string olarak tanımlanmış bir değişken,textbox,label vb nesnelere uygulanabilir.Arama işlemini IndexOf veya LastIndexOf gibi string içinde değilde sadece sonuna bakarak yapar.
Kullanım : Eğer var ise geriye True , yok ise False döndürür.
EndsWith(Aranan string )
Örnek:

[code language=”csharp”]
private void bul_Click(object sender, EventArgs e)
{//Daha fazla bilgi için : www.gorselprogramlama.com
label3.Text = textBox1.Text.EndsWith(textBox2.Text).ToString();
}
[/code]


Daha fazla bilgi için : www.gorselprogramlama.com
Dersin videolu anlatımı ve anlatımda yapılan projeyi indirmek için
konu seçimi de anlatım da harika
sağolun
Çok güzel bir içerik. Teşekkürler.
“belirtilen kelimenin içinde kaç tane varsa”değilde harfin kaçıncı harf değilde kelime olduğunu ve aynı kelimeden başka varsa onunda kaçıncı harf olduğunu nasıl bulabiliriz ? ben alttaki gibi birşeyler yazdım ama tekrar eden kelimeyi de ilk kelimenin bulundugu indsin konumu olarak gosterıyor yani ilk kelime yada harf 3.sıradaysa
diğeri19. sırada olsa dahi 3. sırada diyor ./*Console.Write(“Aranılacak kelime : “); string aranılacak_kelime = Console.ReadLine().ToLower();
Console.Write(“Karakter Dizini : “); string karakter_dizini =Console.ReadLine().ToLower();
string indis = karakter_dizini.IndexOf(aranılacak_kelime).ToString();
for (int ab = 0; ab <= (karakter_dizini.Length – (aranılacak_kelime.Length)); ab++)
{
if (aranılacak_kelime == karakter_dizini.Substring(ab, aranılacak_kelime.Length))
{
Console.WriteLine("kelime : " + aranılacak_kelime + " indis : " + indis);
}
}*/
(console uygulaması olarak )istenilen harf veya kelimenin kaçıncı sırada olduğunu ve aynı kelimeden başka varsa onunda kaçıncı sırada olduğunu nasıl bulabiliriz ? ben alttaki gibi birşeyler yazdım ama tekrar eden kelimeyi de ilk kelimenin bulundugu indsin konumu olarak gosterıyor yani ilk kelime yada harf 3.sıradaysa
diğeri19. sırada olsa dahi 3. sırada diyor ./*Console.Write(“Aranılacak kelime : “); string aranılacak_kelime = Console.ReadLine().ToLower();
Console.Write(“Karakter Dizini : “); string karakter_dizini =Console.ReadLine().ToLower();
string indis = karakter_dizini.IndexOf(aranılacak_kelime).ToString();
for (int ab = 0; ab <= (karakter_dizini.Length – (aranılacak_kelime.Length)); ab++)
{
if (aranılacak_kelime == karakter_dizini.Substring(ab, aranılacak_kelime.Length))
{
Console.WriteLine("kelime : " + aranılacak_kelime + " indis : " + indis);
}
}*/