CodeBlanks Logo Icon CodeBlanks

Özet - RegExp temelleri

JavaScript kursu · Orta seviye · Ders 123/134

Regex kullanarak bir metinden e-posta benzeri adresleri çıkaran bir doğrulama fonksiyonu yazarsın.

Özet - RegExp temelleri

Bu grupta düzenli ifadelerin temellerini gördün: /cat/ gibi literal'ler, new RegExp() constructor'ı, \d \w \s karakter sınıfları, * + ? ve {n} niceleyiciler.

Ayrıca .test() ile eşleşme sorgulamayı, .match() ile eşleşeni çıkarmayı, .replace() ve .split() ile dize işleme yapmayı öğrendin. Şimdi bunları bir görevde birleştireceksin.

Göreve hazırlık

İki küçük görev var. Önce bir metinden e-posta benzeri adresleri .match() ile çıkaracaksın. Kullanıcı adı için \w+, sonra @, sonra alan adı için [\w.]+ kullan.

Sonra bir telefon dizesinden rakam olmayan karakterleri .replace() ile kaldırıp yalnızca rakamları bırakacaksın. İpucu: \D rakam olmayanları eşleştirir.

Uygulama E-posta adreslerini çıkar

emails değişkenine text.match() ile metindeki tüm e-posta benzeri adresleri ata. Desen olarak \w+@[\w.]+ kullan ve global bayrağı ekle. Sonucu console.log ile yazdır.

Örnek çözümü göster
match yöntemi g bayrağıyla tüm eşleşmeleri döndürür. Kullanıcı adı \w+, sonra @, sonra alan adı [\w.]+.
Örnek çözüm:
let emails = text.match(/\w+@[\w.]+/g);
console.log(emails);

Uygulama Telefonu rakamlara indir

digits değişkenine phone.replace() ile rakam olmayan tüm karakterleri kaldır. \D sınıfını ve global bayrağı kullan; yerine boş dize ver. Sonucu console.log ile yazdır.

Örnek çözümü göster
replace bir regex ve bir dize alır. Rakam olmayanlar için \D, tümü için g bayrağı. Boş dizeye çevirmek için "" kullan.
Örnek çözüm:
let digits = phone.replace(/\D/g, "");
console.log(digits);

Kendini test et

  1. Hangi desen tam olarak 4 rakamı eşleştirir?

    • /\d/
    • /\d+/
    • /\d?/
    • /\d{4}/
    Cevabı göster

    /\d{4}/ — Doğru! /\d{4}/ tam 4 rakamı eşleştirir.

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