Bir metini tanımlanmış bir karakter üzerinden parçalamaya yarayan fonksiyona Split adı verilir.
Örneğin;
“Yağmur,Kar,Dolu” gibi bir kelime grubunu parçalamak istediğimiz zaman “,”(Virgül) karakterini tanımlayarak bu kelime grubunu parçalayabiliriz. Parçalama işlemi sonucunda her kelime bir dizi elemanının içine atılarak tekil hale getirilir.
Dim Kelimeler As String = "Yağmur,Kar,Dolu"
Dim Dizi() As String
Dizi = Kelimeler.Split(",")
Kod bu şekilde derlendiğinde Kelimeler değişkeninin içindeki veriler Dizi’nin içine atılır.
Dizi = Kelimeler.Split(",")
Bu satırda metinin hangi karaktere göre parçalanacağını ayarlıyoruz. “,”(Virgül) karakteri yerine ne yazarsak metin ona göre parçalanır.
Bu verileri görüntülemek istediğimizde Dizi isimi ile birlikte index(sıra) numarasını yazmamız yeterli olur.
MsgBox(Dizi(0))
Bu kod ile dizinin 1. elemanını görüntülemiş oluruz. Yani bir mesaj kutusu açılır ve “Yağmur” kelimesi görüntülenir.
Dizinin 3. elemanını görüntülemek istersek MsgBox(Dizi(2))
dizimini kullanırız. Çıktı “Dolu” kelimesi olur.
Kodların tamamı;
Dim Kelimeler As String = "Yağmur,Kar,Dolu"
Dim Dizi() As String
Dizi = Kelimeler.Split(",")
MsgBox(Dizi(0))
MsgBox(Dizi(1))
MsgBox(Dizi(2))
mrb. splitteki kelimelerin sayısını nasıl alabiliriz?
Splitteki kelimeleri ubound ile sayabilirsiniz.
Örnek olarak:
MsgBox(Ubound(Kelimeler.Split(“,”)))
şimdi ben hesap makinesi yapıyorum
sayi = hesap.Text
dizi = sayi.Split(“+” & “-” & “/” & “x”)
dizide hangisini sildiğini nasıl anlarım
Dim Dizi() As String = {“+”, “-“, “x”, “/”}
If Dizi.Contains(“+”) = True Then
MsgBox(“Toplama İşlemi”)
Else
MsgBox(“Karakter bulunamadı”)
End If
Bu kod çalıştırıldığında eğer Dizi() “+” değeri içeren bir elemana sahipse “Toplama İşlemi” şeklinde bir mesaj görüntüleyecektir. Eğer “+” değeri içeren bir eleman yoksa “Karakter bulunamadı” şeklinde bir mesaj görüntüleyecektir.
teşekkürler hocam elimdeki listede parçalama yapmak istiyordum paylaşdığınız kodlar sayesinde halletdim