Düzenli ifade (regex) nasıl test edilir?
Düzenli ifadeler metin içinde kalıp aramak, doğrulamak ve değiştirmek için kullanılır: telefon numarası biçimi, e-posta doğrulama, log dosyasından alan çekme gibi. Araç yazdığınız deseni JavaScript düzenli ifade motoruyla çalıştırır, eşleşmeleri metin üzerinde vurgular ve her eşleşmenin yakalama gruplarını tabloda gösterir.
Bayraklar: g tüm eşleşmeleri bulur, i büyük/küçük harfi yok sayar, m satır başı ve sonunu her satır için uygular, s noktanın satır sonunu da kapsamasını sağlar, u Unicode kipini açar. Türkçe harfleri yakalamak için u bayrağıyla \p{L} kullanın; \w yalnız İngilizce harfleri kapsar.
(a+)+ gibi iç içe niceleyiciler bazı metinlerde üstel sürede çalışır ve tarayıcıyı dondurabilir (ReDoS). Araç deseni ayrı bir Web Worker'da çalıştırır ve 1 saniyede tamamlanmazsa durdurur. Değiştirme alanında $1, $2 ile grupları kullanabilirsiniz.
Sıkça sorulan sorular
Desenim neden tarayıcıyı donduruyor?
(a+)+ gibi iç içe niceleyiciler bazı metinlerde üstel sürede çalışır (ReDoS). Araç deseni ayrı bir işçide çalıştırır ve 1 saniyede durdurur.
Türkçe harfler \w ile eşleşmiyor, neden?
JavaScript'te \w yalnız İngilizce harfleri kapsar. Türkçe harfler için u bayrağıyla \p{L} kullanın.