Regex Tester + Cheatsheet
JavaScript regex'lerini test et, named group'leri incele, replace sonucunu anında gör, hazır pattern'leri yükle ve riskli backtracking için uyarı al.
Regex durumu
Hazır
/(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/g
Gösterilen eşleşme
2
Panel hızlı kalsın diye ilk 2 eşleşme gösteriliyor.
Performans riski
Düşük
Heuristik skor: 0
Replace önizlemesi
Değişti
6 numaralı capture • 6 named capture
Editör
Tarayıcının yerel JavaScript RegExp motoruyla çalışır. Pattern yaz, flag seç ve istediğin girdide dene.
Sonuçlar
Canlı eşleşmeleri, capture group'leri ve replace çıktısını yan yana gör.
Replace önizlemesi
Replacement sonrası çıktı değişti.
Release 02/05/2026
Patch 15/06/2026Eşleşme listesi
2 eşleşme gösteriliyor2026-05-02Numaralı group'ler
$12026$205$302
Named group'ler
year2026month05day02
2026-06-15Numaralı group'ler
$12026$206$315
Named group'ler
year2026month06day15
Eşleşme çıkarıcı / dışa aktarma
Her eşleşmeyi capture group'leriyle listele, ardından kümeyi JSON ya da CSV olarak dışa aktar.
Panel hızlı kalsın diye çıktı sınırlandı; daha az eşleşme görmek için `g`/`y` kapat ya da girdiyi kısalt.
{
"count": 2,
"truncated": true,
"matches": [
{
"match": "2026-05-02",
"index": 8,
"groups": [
"2026",
"05",
"02"
],
"named": {
"year": "2026",
"month": "05",
"day": "02"
}
},
{
"match": "2026-06-15",
"index": 25,
"groups": [
"2026",
"06",
"15"
],
"named": {
"year": "2026",
"month": "06",
"day": "15"
}
}
]
}Performans uyarıları
Bu kontroller heuristik; regex'i tam ispatlamaz. Amaç, sekmeyi dondurmadan önce en yaygın catastrophic backtracking şekillerini yakalamak.
Bu pattern için bariz bir backtracking tuzağı görünmedi.
Hazır pattern kütüphanesi
Sample input ve hazır replacement şablonuyla birlikte production-benzeri bir pattern yükle.
Hızlı cheatsheet
JavaScript regex'te en sık kullandığın token ve replacement yardımcıları için kısa bir hatırlatıcı.
Flag'ler
gİlk eşleşmede durmak yerine tüm eşleşmeleri bulur.
iHarf eşleşmesini büyük/küçük harfe duyarsız yapar.
m`^` ve `$` işaretlerini tüm string yerine satır bazlı çalıştırır.
s`.` karakterinin new line'ı da eşlemesine izin verir.
uUnicode-aware escape ve code point davranışını açar.
yYalnızca mevcut `lastIndex` konumundan itibaren eşleştirir.
Anchor'lar
^String başı; `m` ile satır başı da olabilir.
$String sonu; `m` ile satır sonu da olabilir.
\bWord ve non-word karakterleri arasındaki sınır.
\BWord boundary olmayan konum.
Karakter sınıfları
\d0'dan 9'a herhangi bir ASCII rakam.
\wWord karakteri: harf, rakam ve alt çizgi.
\sBoşluk, tab, new line ve diğer whitespace karakterleri.
[A-Z0-9_]Özel set: listelenen aralıktan tek karakter eşleştirir.
Quantifier'lar
*Bir önceki token'i sıfır veya daha fazla tekrarlar.
+Bir önceki token'i bir veya daha fazla tekrarlar.
?Bir önceki token'i opsiyonel yapar.
{m,n}`m` ile `n` kez arasında tekrarlar.
Group'ler
(...)Çıktıda tekrar kullanabileceğin numaralı bir capture oluşturur.
(?<name>...)`year` veya `slug` gibi isimlendirilmiş bir capture oluşturur.
(?:...)Capture slot'u oluşturmadan token'leri grupla.
foo|barSol dalı ya da sağ dalı eşleştir.
Lookaround'lar
(?=...)Sonraki karakterleri tüketmeden zorunlu kılar.
(?!...)Sonraki karakterlerin eşleşmemesini zorunlu kılar.
(?<=...)Önceki karakterleri tüketmeden zorunlu kılar.
(?<!...)Önceki karakterlerin eşleşmemesini zorunlu kılar.
Replacement token'ları
$&Tüm eşleşen metni ekler.
$11, 2, 3 diye numaralı capture group'leri ekler.
$<name>Mevcut eşleşmeden gelen named capture replacement'ını ekler.
$`Eşleşmeden önce gelen metni ekler.
$'Eşleşmeden sonra gelen metni ekler.
Notlar
Gerçek regex'leri debug ederken işe yarayan birkaç pratik hatırlatma.
- Named group ve replace preview modern JavaScript sözdizimini kullanır; burada gördüğün şey tarayıcıdaki `RegExp` motoruyla aynıdır.
- Birden fazla eşleşme bekliyorsan `g` bayrağını aç; aksi halde JavaScript ilk başarılı eşleşmede durur.
- Heuristik risk uyarıları bilinçli olarak temkinlidir. Amaç regex'i resmi olarak kanıtlamak değil, test aracını tepkisel tutmaktır.