Regex Tester
JavaScript düzenli ifadelerini canlı test et. Eşleşmeleri, capture gruplarını gör ve yazdıkça değiştirme uygula.
/
/
Sonucu görmek için yukarıya giriş yapın.
Sonucu görmek için yukarıya giriş yapın.
Bu ne işe yarar?
Düzenli ifadeler yoğun ve affetmezdir. Gerçekten çalışan birini yazmanın yolu yinelemelidir — desen, örnek metin, ne eşleştiğini gör, ayarla. Bu araç tarayıcında JavaScript motorunun yerel RegExp'ini kullanarak bu döngüyü, artı capture-group incelemesi ve replacement önizlemesini verir. Desenler ve girdiler sayfayı asla terk etmez.
Ne zaman kullanılır
- Kullanıcı girişini doğrulama (e-posta şekilli, telefon şekilli, posta kodu şekilli) ve tam olarak hangi girdilerin geçtiğini ve başarısız olduğunu görme.
- Log satırlarını parse etme, alanlar çıkarma, log filtreleri kurma.
- Gerçek bir kod tabanı boyunca çalıştırmadan önce find-and-replace desenlerini tasarlama.
- Çalışmayan Stack Overflow'dan kopyaladığın bir regex'i debug etme — buraya yapıştır, gerçekte neyi eşleştirdiğini gör.
Yaygın desenler
\w+@\w+\.\w+— e-postaya benzer^\s*$— boş/sadece-boşluk satırı (mbayrağı ile)(?<year>\d{4})-(?<month>\d{2})— adlandırılmış capture grupları(?:.*)— non-capturing grup(?=foo)/(?!foo)— lookahead / negatif lookahead
Sık yapılan hatalar
- JavaScript ≠ PCRE.
\Kyok, recursive desenler yok, lookbehind sadece ES2018'den beri. Perl, PHP veya Python'dan gelen desenler sıklıkla ayarlama gerektirir. gbayrağı olmadan sadece ilk eşleşmeyi alırsın. "Hepsini bul" içingekle; çapalar satır başına eşleşmeli isemile birleştir.- Greedy - lazy.
.*mümkün olduğu kadar çok yakalar;.*?mümkün olduğu kadar az yakalar.<b>hi</b> and <i>there</i>'ı tek blok veya iki blok olarak eşleştirme arasındaki fark. - Satır - string sınırlarında çapalar.
^ve$varsayılan olarak string uçlarıyla eşleşir;mbayrağı ile her satırla eşleşir. - Replacement özellikleri.
$&tüm eşleşmedir;$1,$2, … capture gruplarıdır;$$literal$'dır. Bunu unutmak "neden regex'im dolarlarımı yiyor"un yaygın bir kaynağıdır. - Ciddi bir şey için regex ile HTML parse etme. Klasik uyarı doğrudur: iç içe tag'ler, yorumlar ve CDATA gerçek bir parser gerektirir.