Metin İşlemleri
Şu ana kadar document. başlangıçlı tek kod gördük: document. Write şimdilik bu kodla devam edeceğiz ve metinsel yöntemler üzerinde duracağız. DHTML sayfalarında document. başlangıçlı kodların hepsini ayrıca ele alacağız
Karakter Sayısı Belirleme
Bu sayfadaki metinsel kodlar, metinsel değerleri şekillendirme yöntemleridir. Örneğin değişken.length yöntemiyle metinsel bir ifadenin kaç karakterden oluştuğunu bulabiliriz. Not: Boşluklar da karakter ifade eder.
<html> <head> <title>Karakter sayısı</title> <script language="JavaScript"> function bul() { var metin metin = prompt("Metinsel bir ifade yazın.", "Buraya lütfen...") if (metin == null || metin == "") alert("Yazı kutusuna birşey yazmadınız.") else { document.write("Yazılan metin: " + metin + "<br>") document.write("Karakter sayısı: " + metin.length) } } </script> </head> <body> <form> <p>Aşağıdaki düğme yazılan bir ifadenin karakter sayısını bulmaya yarar:</p> <input type="button" value="Karakter Sayısı" onclick="bul()"> </form> </body> </html>
[Sayfayı göster] [Temizle] [İlk haline getir]
Uygulamamız da metin isimli değişkene length yöntemi uygulanıyor. (Kalın harflerle yazdım.)
Metin İçinde Metin Arama
Aynı yapıda başka bir yöntem koduna geçelim: indexOf("..."). indexOf yöntem kodu ile metinsel bir ifadeyi, başka metinlerin arasında ararız. (Arama motoru yapmak isteyenler iyi okusun.) Mesela i değişkenin değeri "Cameron Diaz" olsun. Biz "Diaz" metinsel ifadesinin bu metin içinde bulunup bulunmadığını bu kodla şöyle anlarız: j = i.indexOf("Diaz"). "Diaz" metinsel ifadesi "Cameron Diaz" metin değerli i içinde var. Bu durumda j pozitif bir tamsayı değeri alır. Olmasaydı -1 değeri alacaktı. Aşağıdaki uygulama herşeyi anlatıyor:
<html> <head> <title>Karakter Bulma</title> <script language="JavaScript"> function bul() { var metin = prompt("Öyle bir şey yazın ki içinde küçük \"a\" harfi olmasın.") var karakter=metin.indexOf("a") if (karakter >= 0) { document.write("<b>\"" + metin + "\"</b> ifadesinde \"a\" harfi var.") } else { document.write("<b>\"" + metin + "\"</b> ifadesinde \"a\" harfi yok.") } } </script> </head> <body> <form> <p>Aşağıdaki düğmeye basın...</p> <input type="button" value="Karakter Arama" onclick="bul()"> </form> </body> </html>
[Sayfayı göster] [Temizle] [İlk haline getir]
indexOf koduna çok benzeyen bir başka yöntem koduna geçelim: match. Kullanım şekli indexOf() ile aynıdır. Tek farkı, eğer ifade aranan metnin içinde yoksa null (yok) değerini, varsa ifadenin metinsel değerini alır:
<html> <head> <title>Karakter Bulma</title> <script language="JavaScript"> function bul() { var metin = prompt("Öyle bir şey yazın ki içinde küçük \"a\" harfi olmasın.") var karakter=metin.match("a") if (karakter == "a") { document.write("<b>\"" + metin + "\"</b> ifadesinde \"a\" harfi var.") } else { document.write("<b>\"" + metin + "\"</b> ifadesinde \"a\" harfi yok.") } } </script> </head> <body> <form> <p>Aşağıdaki düğmeye basın...</p> <input type="button" value="Karakter Arama" onclick="bul()"> </form> </body> </html>
[Sayfayı göster] [Temizle] [İlk haline getir]
Yukarıdaki uygulama bir öncekiyle aynı sonucu veriyor ancak match kodu kullanılmakta.
Metin İçinde Bölüm Belirleme
Bir başka yöntem koduna geçiyorum: substr(...,...). substr kodu metinin belli bir bölümünü ifade etmeye yarar. Örneğin met = "Cameron Diaz" şeklindeki metinsel değerlikli bir değişkene kodu şöyle uygularsak: met.substr(7,4), "Diaz" metinsel değerini elde ederiz. Buradaki 7 sayısı, alıntı bölümünün 8. harften başladığını (ilk harf 0. sırada sayılıyor) ve 4 sayısı alıntının 4 harften oluştuğunu belirtiyor. Aşağıdaki uygulamaya bakalım:
<html> <head> <title>Karakter Alıntısı</title> <script language="JavaScript"> function al() { var metin = prompt("Yazılım buraya yazacağınız metnin 3. harfinden itibaren 5 harflik kısmını yazdırır.") var karakter=metin.substr(2,5) document.write("<b>\"" + metin + "\"</b> ifadesindeki 3. harften itibaren 5 harflik kısım şöyledir:") document.write("<br>\"" + karakter + "\"") } </script> </head> <body> <form> <p>Aşağıdaki düğmeye basın...</p> <input type="button" value="Karakter Alıntısı" onclick="al()"> </form> </body> </html>
[Sayfayı göster] [Temizle] [İlk haline getir]
Uygulama sayesinde kodun işlevi iyice anlaşıldığını sanıyorum. Metin üzerinde tek bir harfi bulmak istiyorsak metin.charAt(Harf Sıra No) kodunu kullanabiliriz. Harf Sıra Nonun 0'dan başladığını belirtmeliyim. "Volkan" metninde 0. sıra nolu harf "V"'dir. Boşluklarında birer karakter olduğunu tekrar hatırlatayım.
Büyük Harfe veya Küçük Harfe Çevirme
Bu bölümün son yöntem kodları: toLowerCase (küçük harfe çevirir), toUpperCase (büyük harfe çevirir). Bu kodlar da öncekiler gibi değişkenden sonra .toLowerCase(...) veya .toUpperCase(...) şeklinde kullanılır. Anlaşılması çok kolay olduğu için hemen uygulamamıza geçelim.
<html> <head> <title>Babalama</title> <script language="JavaScript"> function babala() { var metin = prompt("İsminizi yazın...","Buraya lütfen") var buyuk=metin.toUpperCase(metin) var kucuk=metin.toLowerCase(metin) babalasayfa=window.open("","Yeni_Sayfa", "toolbar=no,location=no,directories=no, status=no, menubar=no,scrollbars=yes, resizable=no,copyhistory=no,width=480, height=180, left=200, screenX=200, top=100, screenY=100") babalasayfa.document.write("<html><head></head><body bgcolor=#ffffcc>") babalasayfa.document.write("<h1>En büyük " + buyuk + "! Başka büyük yok!</h1><br>") babalasayfa.document.write("<h4>Sayın " + kucuk + ", babalama ücreti 50 milyon! Hemen ödeyin</h4>") babalasayfa.document.write("</body></html>") } </script> </head> <body> <form> <p>İsmini yazın lütfen...</p> <input type="button" value="Babalama Düğmesi" onclick="babala()"> </form> </body> </html>
[Sayfayı göster] [Temizle] [İlk haline getir]
Bu sayfada metinsel yöntem kodlarının bir kısmını inceledik. O kadar çok var ki bu sayfada hepsini incelemenin imkanı yok. Ama hepsi böyle kullanımı basit kodlar. JavaScript Komutlarını anlatan referans sayfalarında tüm metinsel kodları görebilirsiniz.
Kaynak www.volkanderinbay.net/ders/dersjscr.asp
Yorumunuzu Ekleyin