JavaScript Düzenli İfadeler

Belirli bir kalıba göre arama yapmak için kullanılan Javascript düzenli ifadeler, search, replace, test, exec ve düzenli ifade özelliklerinin kullanımı ile ilgili bilgiler yer alıyor.

JavaScript düzenli ifadeler arama kriteri oluşturur ve metin veri türü üzerinde arama ve değiştirme yapmak için kullanılır.

Düzenli ifadeler

Düzenli ifadeler arama kriteri oluşturmak için kullanılan özel ifadelerdir.

Metin veri türü içerisinde arama yapmak için düzenli ifadeler kullanılır.

Düzenli ifadeler bir karakterden oluşacağı gibi daha karmaşık karakterlerden oluşabilir.

Düzenli ifadeler metin veri türü içinde arama yapma ve değiştirme işlemleri için kullanılır.

JavaScript regex kullanımı

/ifade/nitelik;

Örnek;

var aranan = /yusuf/i;

/yusuf/i düzenli bir ifadedir.

yusuf aranacak kelimedir.

i küçük büyük harfe duyarsız arama yapılacağını ifade eder.

Regular expression kullanımı

JavaScript düzenli ifadeleri search ve replace fonksiyonlarında kullanılabilir.

Metin içinde arama yapmak için search fonksiyonu kullanılır.

Metin içindeki değeri başka bir değer ile değiştirmek için replace fonksiyonu kullanılır.

search

Örnekte düzenli ifade yusuf kelimesini küçük büyük harfe duyarsız olarak arar.

<script>
  var metin = "Merhaba ben YuSuF";
  var sonuc = metin.search(/yusuf/i);
  alert(sonuc);
</script>

replace

Örnekte düzenli ifade yusuf kelimesini küçük büyük harfe duyarsız olarak Sefa kelimesi ile değiştirir.

<script>
  var metin = "Merhaba ben YuSuF";
  var sonuc = metin.search(/yusuf/i, "Sefa");
  alert(sonuc);
</script>

JavaScript düzenli ifade nitelikleri

Düzenli ifade nitelikleri arama kriterini küçük büyük harfe duyarsız olarak yapmak için kullanılır.

Nitelik Açıklama
i Küçük büyük harf duyarsız arama yapar.
g Metin veri türü içerisinde aranan tüm kelimeler üzerinde işlem yapar.
m Çok satırlı arama yapar.

JavaScript düzenli ifade desenleri

Köşeli parantez içerisinde desenler kullanarak belirli karakter araması yapılır.

Desen Açıklama
[abc] Köşeli parantezler arasındaki karakterlerden herhangi birini bul
[0-9] Parantezler arasındaki herhangi bir rakamı bul
(x|y) Ayraç ile ayrılmış seçeneklerden herhangi birini bul

Meta karakterler özel bir anlam taşıyan karakterlerdir.

Meta karakter Açıklama
\d Sayıları bul
\s Boşluk karakterini bul
\b Kelimenin başında veya sonunda bul
\uxxxx Onaltılık sayı xxxx ile belirtilen Unicode karakterini bul

Niceleyiciler arama niceliğini belirtir.

Nicelik Açıklama
n+ En az bir n içeren herhangi bir kelime bul.
n* Sıfır veya daha fazla n içeren herhangi bir kelime bul.
n? Sıfır veya bir kez n‘yi içeren herhangi bir kelime bul.

test

test fonksiyonu düzenli ifade ile arama yapar.

<script>
  var ifade = /yusuf/i
  var sonuc = ifade.test("Merhaba ben YuSuF");
  alert(sonuc);
</script>

Aranan ifade varsa true yoksa false değerini verir.

<script>
  var sonuc = (/yusuf/i).test("Merhaba ben YuSuF");
  alert(sonuc);
</script>

exec

JavaScript exec fonksiyonu düzenli ifade ile arama yapar.

<script>
  var ifade = /yusuf/i
  var sonuc = ifade.exec("Merhaba ben YuSuF");
  alert(sonuc);
</script>

Aranan ifade varsa bulunan kelimeyi yoksa null değerini verir.

<script>
  var sonuc = (/yusuf/i).exec("Merhaba ben YuSuF");
  alert(sonuc);
</script>

Örnekte aranan ifade bulunamadığı için null değerini verecektir.

<script>
  var ifade = /sefa/i
  var sonuc = ifade.exec("Merhaba ben YuSuF");
  alert(sonuc);
</script>

JavaScript Derslerine buradan ulaşabilirsiniz…

Hayırlı günler dilerim.

Yusuf SEZER

Yusuf SEZER

Computer Engineer who interested about web technologies, algorithms, artificial intelligence and embedded systems; constantly exploring new technologies.


Bunlara'da bakmalısın!