CodeBlanks Logo Icon CodeBlanks

replace ve split ile regex

JavaScript kursu · Orta seviye · Ders 122/134

replace ve split ile regex kullanarak dize işlemleri yapmayı öğrenirsin.

replace ile regex

.replace() bir dizede ilk eşleşmeyi yeni bir metinle değiştirir. Regex ile birlikte kullanınca desenin gücünden yararlanırsın. g bayrağı tüm eşleşmeleri değiştirir.

"2024-01-15".replace(/-/g, ".");
// "2024.01.15"

Böylece "tüm tireleri noktaya çevir" gibi işlemleri tek satırda yaparsın. Eşleşen kısmı $1, $2 gibi başvurularla yeniden kullanabilirsin.

split ile regex

.split() bir dizeyi parçalara böler. Ayraç olarak regex verirsen birden fazla ayraca göre bölme yapabilirsin.

"elma, muz; kiraz".split(/[\s,]+/);
// ["elma", "muz", "kiraz"]

Burada [\s,]+ bir veya daha fazla boşluk ya da virgül demektir. Böylece karışık ayraçlı metinleri tek bir desenle temiz bir diziye çevirirsin.

Uygulama Boşlukları tireye çevir

cleanedText değişkenine text.replace() ile tüm boşluk dizilerini tek tireye çevir. Boşluk deseni için \s+ ve global bayrağı kullan. Sonucu console.log ile yazdır.

Örnek çözümü göster
replace bir regex ve bir dize alır. Boşluk dizisi için \s+, tümü için g bayrağı.
Örnek çözüm:
let cleanedText = text.replace(/\s+/g, "-");
console.log(cleanedText);

Kendini test et

  1. .replace() içinde g bayrağı ne yapar?

    • yalnızca ilk eşleşmeyi değiştirir
    • değişiklik yapmaz
    • tüm eşleşmeleri değiştirir
    • yalnızca son eşleşmeyi değiştirir
    Cevabı göster

    tüm eşleşmeleri değiştirir — Doğru! g bayrağı tüm eşleşmeleri değiştirir.

  2. replace yöntemini çağır

    const text = "2024-01-15";
    const nice = text.____(/-/g, ".");
    console.log(nice);
    Cevabı göster
    const text = "2024-01-15";
    const nice = text.replace(/-/g, ".");
    console.log(nice);
  3. Yöntemleri davranışıyla eşleştir

    replace(re, s)
    değiştir
    split(re)
    böl
    /g bayrağı
    tümünü değiştir
    $1, $2
    grup başvurusu

Orta seviye bölümündeki tüm dersler