Birkaç kullanım alanını yazalım.
i) Üyelik sisteminde seçilen kullanıcı adının uygun formatta olması (a-z A-Z)
ii) Girilen şifrenin sadece sayısal olması (0-9)
iii) Eposta adresinin doğru formatta olması (abc@abc.com)
iv) Bir değişkenin belirli kalıba uygun olması (sayısal ve harf)
Gibi kullanım alanlarını örnek verebiliriz.
Not: ifadeler (desenler) // arasına yazılır.
Örnek: var desen = /düzenli ifade/;
Örneklere geçmeden önce, düzenli ifade yapısındaki metaları (bir nevi anahtarlar) inceleyelim.
| Desen | Açıklama |
|---|---|
| \d | İfade içerisinde sayı arar. Sayı var ise true sonucunu verir. Sayı yok ise false sonucu döner. |
| [abcd] | Parantezler arasındaki herhangi bir harfi arar. |
1) Verilen bir ifade içerisinde rakam (sayı) varlığını kontrol eden desen: \d
Örnek 1: "ontedi.com sitesi 9 yaşında" ifadesi içerisinde rakam barındırmaktadır. Dolayısıyla desenimizin sonucu true olacaktır
"\d" Deseni (Örnek 1)
var desen = /\d/;
var sonuc = desen.test("ontedi.com sitesi 9 yaşında");
alert(sonuc);
Örnek 1 Çıktısı
Örnek 2: "ontedi.com sitesi dokuz yaşında" ifadesi içerisinde rakam barındırmamaktadır. Dolayısıyla desenimizin sonucu false olacaktır
"\d" Deseni (Örnek 2)
var desen = /\d/;
var sonuc = desen.test("ontedi.com sitesi dokuz yaşında");
alert(sonuc);
Örnek 2 Çıktısı
Örnek 3: "Merhaba, ben Serkan" ifadesi içerisinde rakam barındırmamaktadır. Dolayısıyla desenimizin sonucu false olacaktır
"\d" Deseni (Örnek 3)
var desen = /\d/;
var sonuc = desen.test("Merhaba, ben Serkan");
alert(sonuc);
Örnek 3 Çıktısı
Örnek kod ile canlı test sürüşü yaparak mantığı biraz daha kavrayalım.
"\d" Deseni (Örnek Kod)
<input type="text" class="input" placeholder="Buraya bir şeyler yaz!" />
<button onclick="javascript:return fnDesen();">Girilen İfade İçerisinde Sayı Ara</button>
<p class="icerik"></p>
<script>
function fnDesen()
{
var strDeger = document.querySelector('.input').value;
var objHedef = document.querySelector('.icerik');
var desen = /\d/;
if (strDeger == '')
{
objHedef.innerHTML = "Lütfen test edilecek bir yazı giriniz";
}
else
{
if (desen.test(strDeger))
{
objHedef.innerHTML = "<strong>" + strDeger + "</strong> cümlesinin içerisinde rakam var";
}
else
{
objHedef.innerHTML = "<strong>" + strDeger + "</strong> cümlesinin içerisinde rakam yok";
}
}
}
</script>
Örneğimizin HTML ve JavaScript betikleri hazırlandı. Şimdi bu betikler üzerinde denemeler yapalım.
"\d" Deseni (Örnek Kod Test Sürüşü)2) Verilen bir ifade içerisinde herhangi bir değerin varlığını kontrol eden desen: []
Örnek 1: "Benim adım Serkan" ifadesi içerisinde "a", "b" veya "c" harflerinden en az biri barındırmaktadır. Dolayısıyla desenimizin sonucu true olacaktır
"[]" Deseni (Örnek 1)
var desen = /[abc]/;
var sonuc = desen.test("Benim adım Serkan");
alert(sonuc);
Örnek 2: "Kitap oku" ifadesi içerisinde "s", "e" veya "r" harflerinden en az birini barındırmamaktadır. Dolayısıyla desenimizin sonucu false olacaktır
"[]" Deseni (Örnek 2)
var desen = /[ser]/;
var sonuc = desen.test("Kitap oku");
alert(sonuc);
Örnek 3: "Bu elbise 20 liradır" ifadesi içerisinde "d", "n", "2", "m" haf veya rakamlarından en az birini barındırmaktadır. Dolayısıyla desenimizin sonucu true olacaktır
"[]" Deseni (Örnek 3)
var desen = /[dn2m]/;
var sonuc = desen.test("Bu elbise 20 liradır");
alert(sonuc);
"[]" Deseni (Test Sürüşü)