Makale Özeti

Bu yazımızda VB.NET üzerinde kullanılan ve stringler ve string fonksiyonları hakkında bazı ipuçları verilecek…

Makale

Untitled VB.NET STRING FONKSİYONLARI

Bu yazımızda VB.NET üzerinde kullanılan ve stringler ve string fonksiyonları hakkında bazı ipuçları verilecek…

Stringler genel itibatiyle matematiksel değeri olmayan matematiksel işlemlere sokulmayan verilerdir. Sayı karakterleri taşıyan değerler tip dönüşleri ile istenilen tiplere dönüştürülebilirler bu ifade tüm değişkenler için geçerlidir. Bu yazımı iki başlık altında toplamayı düşündüm. İlk olarak sizlere String türü değişkenlerle yapılacak işlemleri anlatacağım. İkinci olarak da string fonksiyonlarını ele alacağız.

İlk Olarak stringlerle yapılan işlemleri ele alarak çalışmalarımıza başlayalım. İki string ifadeyi birleştirmek istersek aşağıdaki söz dizimini kullanacağız.

k=i+j

Public i As String
Public j As String
Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
i = "Tarık " k = i + j
Label1.Text = k
End Sub

Yukarıdaki örnek için bir adet buton ve bir adet label i textboxumuzun üzerine bırakalım. Ve kod penceresine aşağıdaki kodu yerleştirelim. İ,j,k değişkenlerini form1 nesnesi içinde public olarak tanımladık ve daha sonra i,j değişkenlerine "Tarık " , "Gökhan " string değerlerini atadık. Ve k=i+j olarak birleştirme işlemini yerine getirdik. Sonuç ortada şimdi beklide stringler hiç bilmeyen birinin çok daha iyi anlayacağı bir örnek vereceğim. Açtığınız VB.NET formunu kapatmayın. Vereceğim örnekler hep bu buton ve label üzerinde olacaktır. Şimdi kodu aşağıdaki ile değiştirelim.

Public i As String
Public j As String
Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
i = "1"
j = "2"
k = i + j
Label1.Text = k

End Sub
Şimdi sonuçta "k" değişkeninde depolanan değer 12 dir.


Peki bu işlemden sonra kodumuzda string olarak tanımladığımız bu ifadeleri integer olarak tanımlayalım ve "k" değişkeninden elde ettiğimiz değere bakalım. K=3 çok doğru çünkü matematiksel bir toplama işlemi gerçekleştirildi. String bir karakterdir. Bir sayı dahi depolasa depoladığı şey sayının değeri değil görüntüsüdür. Yani ASCII içindeki tüm karakterleri alabilir. Hemen uyarayım "+" karakterinin bir alternatifi de "&" karakteridir. Yani "+" ile tamamen aynı görevi yapar.

Herhangi bir string ifadenin parçacıklarına yani alt stringlerine ulaşmak istersen ne yapacağız? Bu konuda da hiç dertlenmemize gerek yok. VB.NET in bizim için sunduğu değişkenlere ait metotlar mevcut. String değişkeninin substring metodu ile bu sorunlar aşılıyor. Aşağıdaki örneği inceleyelim.

Public i As String
Public j As String
Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
k = "Tarık Gökhan Kızılırmak"
i = k.Substring(0, 5)
Label1.Text = i
End Sub

Görüldüğü gibi k deişkeninin k.Substring(başlangıç karakteri , karakter sayısı) metodu tamamen işimizi görecektir. Burada bilinmesi gereken küçük bir ayrıntı var o da ilk karakterimiz daima 0. karakterdir.

Bir string ifadesinin uzunluğunu bulmak istersek aşağıdaki kodu yazmamız gerekir.

Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
k = "Tarık Gökhan Kızılırmak"
Label1.Text = k.Length
End Sub

Görüldüğü gibi bu defa da string ifadenin Length metodunu kullandık. Bu bize stirng ifdade içindeki karakter sayısı olan 23 değerini gönderecektir.

Bir string ifade içinde bir başka string ifadeyi aramak istersek aşağıdaki kodu yazmamız gerekir.

Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
k = "Tarık Gökhan Kızılırmak"
Label1.Text = k.IndexOf("Tarık", 0)
End Sub
Bu kodu incelersek indexof metodunun ilk parametresi Aranacak string ifadeyi içerir. Neyin içinde arayacak tabii ki k değişkeninin içinde arayacak. Kaçıncı değerinden itibaren başlanacak aramaya derseniz o da ikinci parametre olan "0" değeri ile olacaktır.Eğer aranan string ifademizin içinde yoksa (-1) değerini bize gönderir. Bulunduğunda kaçıncı karakterden başlıyorsa o karakterin numarası değer olarak aktarılır.

Stringler içindeki diğer önemli metot Remove Metodudur. k.remove(x,y) şeklinde kullanıldığında x. Karakterden başlayarak sağa doğru y karakter siler.

Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
k = "Tarık Gökhan Kızılırmak"
Label1.Text = k.Remove(0, 6)
End Sub

Böylece k değişkeninde depolanan değer "Gökhan Kızılırmak" olarak kalır.

Son olarak replance metodundan bahsetmek istiyorum bu metodla bir string içinde bir string aranır ve alternatif bir string ile değiştirilir. Bunun örneği de aşağıda mevcut

Public k As String
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
k = "Tarık Gökhan Kızılırmak"
Label1.Text = k.Replace("Tarık Gökhan", "Türkan Filiz")
End Sub

Gördüğünüz gibi "Tarık Gökhan" İfadesinin yerine "Türkan Filiz" ifadesi yerleştirildi.

String ifadelerle ilgili bazı temem ipuçlarını sizlere açıklamaya çalıştım. Şimdi de stringlerle kullanılabilecek bazı temel fonksiyonları ve bunların işlevlerini ve parametrelerini tablo halinde sunuyorum. Umarım işinize yarar.

Fonksiyon Adı İşlevi
ASC string Karakterin ASCII değerini döndürür.
CHR ASCII kodunun normal karakter değerini döndürür.
SPACE Boşluk Üretir
RIGHT Soldan sağa doğru belirtilen sayıda karakterler alarak yeni bir string üretir.
LEFT Sağdan sola doğru belirtilen sayıda karakterler alarak yeni bir string üretir.
MID Soldan başlayarak belirtilen sayı kadar karakter atlar
ve belirtilen sayıda karakterler alarak yeni bir string üretir.
INSTR Bir string içinde diğer bir stringi arar.
Başlangıç string numarasını bulur.Bulamazsa "0" değerini gönderir.
LEN Verilen stringin uzunluğunu hesaplar
LCASE Verilen stringi küçük harfe çevirir.
UCASE Verilen stringi büyük harfe çevirir.
STRCOMP stringleri karşılaştırır.
TRIM Bir stringin sadece sağ taraftaki, başluklarını yok eder.
LTRIM Bir stringin sadece sol taraftaki, başluklarını yok eder.
TRIM Bir stringin tüm başluklarını yok eder.

Tarık Gökhan Kızılırmak
tarikgokhan@hotmail.com