ASP String İşlemleri

WebMaster bölümünde yer alan bu konu SüKuN tarafından paylaşıldı.

  1. SüKuN

    SüKuN Harbi Aktif Üye

    UCASE AND LCASE
    Ucase bir string içerisnde yer alan tüm karakterleri büyük karakterlere çevirmek için kullanılan bir fonksiyondur. Bu işlemin tam tersini yani bir string içinde yer alan karakterlerin tamamını küçük harflere çevirmeye yarayan fonksiyon ise Lcase fonksiyonudur. Örnek vermek gerekirse "Selam Millet" string verisini içeren değişken Ucase fonksiyonuna sokulduğunda yani :

    yazi="Selam Millet"
    Ucase(yazi) gibi bir işlemin sonucunda yazi değişkeni "SELAM MILLET" şekline dönüşür. Aynı değişken Lcase fonksiyonuna sokulduğunda ise sonuç "selam millet" olacaktır.
    <% // Asp script bloğunun başladığını belirtir.
    yazi="Selam Millet" // yazi değişkenine atama yapılıyor
    response.write Ucase(yazi) // değişkenin içeriği büyük harfe dönüştürdü ve ekrana yazıldı.
    response.write Lcase(yazi) // değişkenin içeriği küçük harfe dönüştürdü ve ekrana yazıldı.
    %> // Script Bloğunun bitişi.


    LEN
    Bir stringin içeirsinde bulunan karakter sayısının bulunmasına ihtiyaç duyulduğunda Len fonksiyonu kullanılır. Kullanım şekli:
    Len (string) şeklindedir.
    Örnek vermek gerekirse:

    <%
    text="bunun içinde kaç karakter var"
    sonuc=Len(text)
    response.write sonuc
    %>


    Yukarıda ki örneği açıklayacak olursak text değişkenine içeriği "bunun içinde kaç karakter var" şeklinde bir değer atanıyor daha sonra len fonksiyonu kullanılarak bulunan değer yani stringin içerisnde yer alan karakter sayısı ki buna boşluklar (space ) de dahil sonuc adlı bir başka değişkene atanıyor en son satırda ise sonuc değişkenin içeriği ekrana yazılıyor.

    LEFT AND RIGHT
    Left ve Right fonksiyonları bir string içerisinden sağ veya soldan istenilen karakterin kopyalanmasını sağlamak amacı ile kullanılır. Bu string içerisinden seçilmiş bir parçanın kopyalanması gibidir. Aşağıda Left ve Right kullanımlarına ilişkin örnekler verilmiştir.

    <%
    test="Buradanekadarçokinsanvarmış"
    soldan=Left(test,6)
    sagdan=Right(test,6)
    response.wrirte soldan
    response.wrirte sagdan
    %>


    örneği açıklayalım ilk satırda test adlı değişkene test="Buradanekadarçokinsanvarmış" satıı ile bir atama gerçekleştiriliyor ikinci satırda kullanılan left(test,6) komutu ile test stringi içerisinde soldan başlanarak 6 adet karakter kopyalanıyor ve kopyalanan karakter soldan adlı değişkene atanıyor. Bu işlemin sonucunda soldan değişkeninin değeri soldan="burada" oluyor çünkü tüm yazı içerisinde soldan itibaren 6 karakter kopyalayacağımız left(test,6) ile belirtmiş oluyoruz. Aynı işelm right fonksiyonu içinde geçerki burada test verisi içinden gene 6 karakter kopyalıyoruz fakat bu işlem string içerisinde sağdan sola doğru yapılan bir haraket ile gerçekleşiyor. Bu işelmin sonucundada elde edilen değer sagdan değişkenine atanıyor. Sonuç itibarı ile sagdan değişkeninin içeriğide sagdan="varmış" oluyor. Son 2 satırda ise elde edilen bu değerler ekrana yazılıyor. (response.write kullanılarak)

    MID
    Bir string içerisinde belirli bir aralığı kopyalamak istediğimizde kullanabileceğimiz fonksiyon Mid fonksiyonudur. Genel kullanımı:
    Mid(String , nereden_baslanacak , kaç_karakter_kopyalanacak) şeklindedir.
    Bir örnek vererek daha iyi açıklamaya çalışalım.

    test="Buradanekadarçokinsanvarmış"
    sonuc=Mid(test,7,10)
    response.write sonuc


    test içersinde yer alan test="Buradanekadarçokinsanvarmış" text içerisinde 7. ci karakterden başlamak üzere toplam 10 karakter kopyalanarak sonuc adlı değişkene atanıyor sonuc değişkenin değeri ise "nekadarçok" şeklinde oluyor ve response.write kullanılarak sonuc ekrana (html data stream içerisine ekleniyor) yazdırılıyor.

    INSTR
    Instr fonksiyonu kullanılarak bir string dizisi içerisinde yer alan bir karakterin nerede yer aldığını (kaçıncı karakter olduğunu) bulmak mümkündür. Aşağıdaki örnek incelenirse Instrt fonksiyonunun kullanımı daha iyi anlaşılabilir.

    strtext="HowLong"
    karakter_nerede=Instr(strtext,"Long")


    strtext değişkenine "HowLong" değeri atanmış ve instr fonksiyonu kullanılarak bu text içerisinde yer aldı düşünülen "Long" un nerede başladığı bilgisi karakter_nerede adlı değişkene atanmıştır. Burada karakter_nerede değişkeninin değer 4 olacaktır çünkü "Long" strtext içerisinde 4. cü karakterden itibaren başlamaktadır. Eğer aranılan text veya karakter bulunamaz ise Instr fonksiyoınu 0 değerini geri döndürür.

    LTRIM, TRIM VE TRIM
    Bu üç fonksiyon verilen bir textin sağında, solunda veya hem sağında hem de solunda kalan boşlukların atılmasını sağlamak için kullanılan fonksiyonlardır. Her üç fonksiyonda sadece tek bir parametre alırlar ki buda boşlukların kaldırılmak istenildiği text in tam kendisidir.
    Ltrim textin solunda bulunan tüm boşlukları, Rtrim textin sağında bulunan boşlukları Trim ise textin hem sağında hemde solunda bulunan boşlukları çıkarmak için kullanılan bir fonksiyondur.

    REPLACE
    Gayet faydalı bir fonksiyondur. Uzun bir metin içerisindeki belirlediğiniz ifadeyi başka ifadeyle değiştirmenizi sağlar.

    Söz dizimi: REPLACE(string, değişecek_olan, yerine_konulacak, başlangıç_indexi, değişiklik_sayısı, karşılaştırmakodu)

    Parametreler:

    String: İçinde değişiklik yapacağımız metindir.

    Değişecek_olan: Metin içinde değiştirmek istediğimiz alt-dizgi (sub-string) dir.

    Yerine_konulacak: Belirtilen alt-dizginin yerine konulacak ifadedir.

    Başlangıç_indexi: Değiştirme işleminin, stringin kaçıncı karakterinden başlayacağıdır.

    Varsayılan: 1

    Değişiklik_sayısı: Çok açık. -1 yazılırsa bulunan tüm alt-dizgiler değiştirilir.

    karşılaştırmakodu: VBTextCompare için 1, VBBinaryCompare için 0 yazılabilir.

    Varsayılan 0.
    Replace fonksiyonu şu şekilde de işlev yapar. REPLACE(string, değişecek, yerinekonulacak). Ancak fonksiyonun daha verimli kullanılabilmesi için tüm parametlerinin belirtilmesi gerekir. Örnekleri inceleyin, anlayacaksınız.

    Örnek:

    Dim mystr
    mystr = "Ağır ağır çıkacaksın bu merdivenlerden"
    Response.write replace(mystr, "Ağır", "Hızlı", 1, -1, 0)
    ' sayfaya "Hızlı ağır çıkacaksın bu merdivenlerden" yazar.
    Response.write replace(mystr, "Ağır", "Hızlı", 1, -1, 1)
    ' sayfaya "Hızlı Hızlı çıkacaksın bu merdivenlerden" yazar.
    Response.write replace(mystr, "a", "A", 1, -1, 1)
    ' sayfaya "Ağır Ağır çıkAcAksın bu merdivenlerden" yazar.
    Response.write replace(mystr, "a", "A", 1, 2, 1)
    ' sayfaya "Ağır Ağır çıkacaksın bu merdivenlerden" yazar.


    Replace fonksiyonu bir çok yerde yardımımıza yetişir. Örneğin bir formdan alınan içerikte yer alması muhtelemel istenmeyen ifadelerin ayıklanması sağlanabilir. HTML taglerinin kullanılması önlenebilir. Ve daha bir çok yerde REPLACE size büyük fayda sağlayacaktır.

    STRING FONKSİYONU
    VBScript ten yine evlere şenlik bir fonksiyon. Belirtilen sayıda karakterin tekrarını içeren string oluşturuyor.

    Örnek:
    Response.write STRING(5, "*") ' sayfaya "*****" yazar

    SPLIT FONKSİYONU

    Bir metinden belirlenmiş ayraçlar (delimiter) vasıtasıyla belirtilen sayıda alt-dizgi içeren 0 tabanlı, tek boyutlu dizi üretir.

    Sözdizimi: SPLIT(ifade, ayraç, sayi, karşılaştırmakodu).
    (Sayi yerine -1 yazılırsa tüm belirlenen tüm alt-dizgiler işleme tabi tutulur.)
    Ne iş yaptığını anlamak için örnek yapalım.

    Örnek:
    Dim mystr, dizi(3)
    mystr = "EvcilASP|Türkiye nin|ASP Bostanı"
    dizi = SPLIT(mystr, "|", -1, 1)
    Reponse.Write dizi(0) ' sayfaya "EvcilASP" yazar
    Reponse.Write dizi(1) ' sayfaya "Türkiye nin" yazar
    Reponse.Write dizi(2) ' sayfaya "ASP Bostanı" yazar


    JOIN FONKSİYONU
    Split fonksiyonuna göre zır işlemi yapar. Bir dizinin elemanlarını belirtilen ayraç ile birleştirip bir string üretir.

    Sözdizimi: JOIN(ifade, ayraç)

    Örnek:
    Dim dizi(3), str, str2
    dizi(0) = "Ben"
    dizi(1) = "Sekizinci"
    dizi(2) = "Henri"
    str = JOIN(mystr, "|")
    str2 = JOIN(mystr, " ")
    Reponse.Write str ' sayfaya "Ben|Sekizinci|Henri" yazar
    Reponse.Write str2 ' sayfaya "Ben Sekizinci Henri" yazar


    MANTIKSAL İFADELER

    İf - Then
    VBScript'in vereceğiniz bir durumun bulunup bulunmadığını sınamasını sağlar. Genel yazım kuralı şöyledir:
    If şart Then
    [şart doğru ise yapılacak işler]
    Else
    [şart doğru değilse yapılacak işler]
    End If

    İf...then yapısının en son ve geniş kullanımı ise Elseif yapısı ile birden fazla şart içeren durumlardır.

    <%
    if method= "Faks" then
    Response.Write "Lütfen Faks numaranızı giriniz "
    Elseif method= "Email" then
    Response.Write "Lütfen E-mail adresinizi giriniz"
    Elseif method= "Telefon" then
    Response.Write "Lütfen telefon numaranızı giriniz"
    Else
    Response.Write "Herhangi bir bilgi iletilmeyecektir"
    End if
    %>


    Select Case

    Olasılık sayısı artan daha karmaşık bir yapıda if...then yapısı karmaşık bir çözüm olacaktır. Böyle durumlarda Select...Case yapısı daha uygun bir çözüm olarak kullanılır . Aşağıda verilen örneğe göz atalım:

    <%
    Select Case Secim
    Case "Faks"
    Response.Write "Lütfen Faks numaranızı giriniz"
    Case "Telefon"
    Response.Write "Lütfen telefon numaranızı giriniz"
    Case "E-mail"
    Response.Write "Lütfen e-mail adresinizi giriniz"
    End Select
    %>