SubString nedir?
Alt dize işlevi, belirtilen dizenin bir bölümünü elde etmek için kullanılır. Bu yöntem Microsoft VB.NET'in String sınıfında tanımlanmıştır. Dizenin çıkarılacağı başlangıç dizinini belirtmelisiniz. Dize, belirttiğiniz uzunluğa kadar bu dizinden çıkarılacaktır.
Bu eğitimde öğreneceksiniz
- SubString nedir?
- Alt Dize Sözdizimi
- Örnekler
- Bir Argüman
- Orta karakterler
- Bir Karakter
Alt Dize Sözdizimi
İşlev, aşağıdaki söz diziminde gösterildiği gibi iki bağımsız değişkeni kabul eder:
Public Function Substring(ByVal start_Index As Integer, ByVal sub_length As Integer) As String
Buraya,
- ByVal anahtar sözcüğü, işlevlere bağımsız değişkenler iletme mekanizması olan geçiş değerini belirtir.
- Start_Index, alt dizenin elde edileceği dizindir
- alt_uzunluk, Dizenin start_Index'ten kopyalanacağı uzunluğu belirtir. Bu uzunluk, karakter sayısı ile ölçülür. İşlev, çıkarılan alt dizeyi döndürür.
Örnekler
Adım 1) Yeni bir konsol uygulaması oluşturun.
Adım 2) Aşağıdaki kodu ona ekleyin:
Module Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(0, 4)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Adım 3) Kodu çalıştırmak için araç çubuğundan Başlat düğmesine tıklayın. Aşağıdaki sonucu almalısınız:
Aşağıdaki kodu kullandık:
Kod Açıklaması:
- Module1 adlı bir modül oluşturma.
- Ana alt prosedürü başlatmak.
- St adında bir dizge değişkeni tanımlamak ve ona Guru99 değerini atamak.
- 0f dizininden 'st' dizesinin bir alt dizisi olarak 'alt' adlı bir dize değişkenini ve 4 karakter uzunluğunda tanımlama.
- Konsolda biraz metin ve yukarıdaki alt dizeyi yazdırmak.
- Konsol penceresini bir süre duraklatmak, kullanıcının kapatmak için işlem yapmasını beklemek.
- Ana alt prosedürün sonu.
- Modülün sonu.
Bir Argüman
İşleve yalnızca bir argüman iletirsek ne olur? İşlev, bu dizinden başlayan Dize'deki tüm verileri kopyalayacaktır. Olan şey, Substring işlevinin, o dizindeki tüm dize verilerini ve bu dizini izleyenleri dahili olarak kopyalar. Örneğin:
Module Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(4)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Kodu çalıştırmak için Başlat düğmesine tıklayın. Aşağıdakileri döndürmelidir:
Alt dize işlevi 99'u döndürdü. 4 parametresini işleve ilettik, yani alt dizeyi dizgenin 4 dizinindeki karakterden String'in sonuna çıkarmaya başlayacak. 9, Guru99 dizesinin 4. dizinindeki karakterdir, bu nedenle çıkarma işlemi burada başlamıştır.
Orta karakterler
Ayrıca söz konusu String'in orta karakterlerini almamız da mümkündür. Bu durumda, sadece ihtiyacımız olan String'in başlangıç indeksini ve uzunluğunu sağlamamız gerekiyor. Aşağıdaki örnekte, dizin 2'den belirtilen String'in bir alt dizesini alıyoruz ve String, 2 karakter uzunluğunda olacak:
Module Module1Sub Main()Dim st As String = "Guru99"Dim subst As String = st.Substring(2, 2)Console.WriteLine("The substring is: {0}", subst)Console.ReadKey()End SubEnd Module
Kodu çalıştırmak için araç çubuğundan Başlat düğmesine tıklayın. Aşağıdaki sonucu alacaksınız:
Yukarıdaki örnekte, alt dize işlevi ru döndürdü. Parametreleri (2, 2) işleve geçirdik. İlk 2, işleve dizin 2'den alt dizeyi çıkarmaya başlaması talimatını verirken, ikinci 2, işleve yalnızca 2 karakter uzunluğunda bir alt dizeyi döndürme talimatı verir. Bu, alt dizenin çıkarılmasının Guru99 dizesinin 2. dizininde bulunan r olan öğeden başlaması gerektiği anlamına gelir. Döndürülen alt dizenin yalnızca 2 karakter uzunluğunda olması gerektiğinden, ayıklama 'u' harfini geçmeyecek, dolayısıyla 'ru' döndürdü.
Bir Karakter
Bir dizeden tek bir karakter elde etmek için Substring işlevini kullanabiliriz. Böyle bir durumda sizin için ayırma yapmanız zorunludur ancak karaktere direkt olarak ulaşılabilmektedir. Bu biraz daha hızlı. Aşağıdaki örnek, bunu başarabileceğimiz iki yolu göstermektedir:
Module Module1Sub Main()Dim st As String = "Guru99"Dim mid1 As Char = st(1)Console.WriteLine(mid1)Dim mid2 As String = st.Substring(1, 1)Console.WriteLine(mid2)Console.ReadKey()End SubEnd Module
Kodu çalıştırmak için Başlat düğmesine tıklayın. Aşağıdaki sonucu alacaksınız:
Aşağıdaki kodu kullandık:
Kod Açıklaması:
- Module1 adlı bir modül oluşturma.
- Ana alt prosedürü başlatmak.
- St adında bir dizge değişkeni tanımlamak ve ona Guru99 değerini atamak.
- Mid1 adında bir dizge değişkeni tanımlamak ve String st dizin 1'deki karakteri almak. Bu karakter mid1 değişkenine atanacaktır.
- Konsolda yukarıdaki karakterin yazdırılması.
- Mid2 adında bir dizge değişkeni tanımlama ve dizindeki 1 uzunluğundaki karakteri String st. 1'in uzunluğu, başlangıç dizininde aynı karakteri döndüreceği anlamına gelir. Sayma, belirttiğiniz başlangıç dizininden başlar. Bu karakter mid2 değişkenine atanacaktır.
- Konsolda yukarıdaki karakterin yazdırılması.
- Konsol penceresini bir süre duraklatmak, kullanıcının kapatmak için işlem yapmasını beklemek.
- Ana alt prosedürün sonu.
- Modülün sonu.
Özet
- Substring işlevi, Visual Basic.NET'in String sınıfında tanımlanır.
- Alt dizenin başlangıç noktası ve alt dizenin uzunluğu olan iki bağımsız değişkeni kabul eder.
- Ana String'den çeşitli alt dizeler elde etmek için bu argümanlarla oynayabiliriz.