JavaScript Regular ifadələr (Regex) bələdçisi
-
Regular ifadələr (Regular Expressions və ya qısaca Regex) JavaScript-də mətnlə işləmək üçün çox güclü bir alətdir. Onlar mətn axtarışı, dəyişdirmə, doğrulama və parçalama işlərini sadələşdirir. Bu məqalədə regulər ifadələrin əsas prinsiplərindən başlayaraq, onların real layihələrdə necə istifadə olunduğuna qədər geniş şəkildə izah veriləcək.
Regular ifadə nədir?
Regular ifadə — müəyyən bir mətn nümunəsini tapmaq və onun üzərində əməliyyat aparmaq üçün istifadə olunan xüsusi simvollardan ibarət sintaksisdir. Məsələn, bir sənəddə bütün e-poçt ünvanlarını tapmaq üçün istifadə oluna bilər.
🧱 Regulər ifadələrin yaradılması
JavaScript-də regex yaratmağın iki üsulu var:
1. Regex literal:
const pattern = /abc/;
2.
RegExp
konstruktoru:const pattern = new RegExp("abc");
İkinci üsul əsasən dinamik ifadələr yaratmaq üçün istifadə olunur.
🧪 Əsas Regex simvolları və strukturu
Simvol Təsvir .
Hər hansı bir simvol (yeni sətrdən başqa) \d
Rəqəm (0-9) \w
Hərf, rəqəm və alt xətt \s
Boşluq simvolu ^
Sətirin başlanğıcı $
Sətirin sonu *
0 və ya daha çox +
1 və ya daha çox ?
0 və ya 1 dəfə {n}
Dəqiq sayda təkrarlanma [abc]
Sadalanan simvollardan biri [^abc]
Sadalanan simvollardan başqa biri (a | b)
“a” və ya “b”
Bayraqlar (Flags)
Regex-lər əlavə parametrlərlə işləyə bilər:
g
(global): Bütün uyğunluqları tapmaq üçüni
(ignoreCase): Böyük-kiçik hərf fərqini nəzərə almamaq üçünm
(multiline): Çoxsətirli rejim üçünu
(unicode): Unicode dəstəyi üçün
Praktik nümunələr
1. E-poçt doğrulaması:
const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
2. Telefon nömrəsi doğrulaması:
const phoneRegex = /^\+994\d{9}$/;
3. Mətn daxilində söz axtarmaq:
const sentence = "Salam dünya"; const result = /dünya/.test(sentence); // true
Regex ilə əvəzləmə
String.prototype.replace()
metodu regex ilə birlikdə güclü bir vasitəyə çevrilir:const text = "Salam, 123"; const cleaned = text.replace(/\d/g, ""); // "Salam, "
Regex və
match()
,test()
,exec()
test()
— uyğunluq olub olmadığınıtrue
/false
qaytarırmatch()
— uyğunluqları massiv şəklində qaytarırexec()
— bir uyğunluğu obyekt kimi qaytarır
let pattern = /Hello/; let input = "Hello, World!"; let result = input.match(pattern); console.log(result);
const pattern = /\(\d{3}\) \d{3}-\d{4}/g; const string = "My phone numbers are (123) 456-7890 and (555) 555-1212."; let matches; while (matches = pattern.exec(string)) { console.log(matches); }
Real layihələrdə regex istifadəsi
- Form doğrulama: istifadəçi məlumatlarının düzgünlüyünü yoxlamaq
- Data parsing: log fayllarından və ya mətndən məlumat çıxarma
- Text search: mətnlərdə açar sözlərin tapılması
- Syntax highlighting: kod redaktorlarında sözlərin rənglənməsi
- Router Matching: URL marşrutlarının uyğunlaşdırılması (məsələn,
/product/:id
kimi)
Bəzi tələ və çətinliklər
- Regex-lər oxunması və yazılması çətin ola bilər, buna görə sadə ifadələrlə başlamaq məsləhətdir.
- Performans məsələlərinə diqqət yetirin: çox kompleks ifadələr performansı azalda bilər.
- Regex ilə hər problemi həll etməyə çalışmayın – bəzən sadə
string
metodları kifayət edir.
Nəticə
JavaScript-də regulər ifadələr, effektiv və çevik mətn işləmə vasitəsidir. Onları mənimsəmək, xüsusilə form doğrulama və məlumat emalı ilə məşğul olan proqramçılar üçün vacibdir. Sadə regex-lərlə başlayın və tədricən daha mürəkkəb nümunələrə keçin.
Bilik paylaşdıqca artan bir sərvətdir