Ana içeriğe geçHesaplayıcıya geç
108 hesap makinesiCanlı sonuçlarAdım adım çözümler

Rechnerpilot aracı

Regex test aracı

RegExp, test metnine karşı izole bir Web Worker içinde çalıştırılır; eşleşmeler ve gruplar gösterilir.

Geliştirici Araçları

İzole yürütme bu ortamda kullanılamıyor. Regex-Tester tarayıcıda Web Worker desteği gerektirir.

Açıklama

Regex test aracı nasıl çalışır

Regex-Tester bir düzenli ifadeyi (JavaScript/ECMAScript söz dizimi) test metnine karşı değerlendirir ve eşleşmeleri, konumlarını ve yakalanan grupları gösterir. Flag'ler üzerinden diğer şeylerin yanı sıra global arama (g), büyük/küçük harf duyarlılığı (i) ve çok satırlı davranışı (m) denetlersiniz.

Güvenlik açısından önemli: Kullanıcı tarafından girilen bir kalıp "katastrofik backtracking" nedeniyle keyfi ölçüde uzun süre hesaplayabilir. Yalnızca bir girdi uzunluğu sınırı buna karşı koruma sağlamaz. Bu nedenle değerlendirme ayrı bir Web Worker içinde çalışır; bu worker kısa bir süre içinde yanıt vermezse sert biçimde durdurulur ve atılır. Ana iş parçacığı — ve dolayısıyla kullanım — her zaman yanıt vermeye devam eder.

Bu aracın sınırları

  • Yalnızca JavaScript regex söz dizimi — PCRE/.NET özellikleri yoktur.
  • Engelleyici kalıplar durdurulur, "onarılmaz".
  • En fazla 1000 değerlendirilen eşleşme (ilk 100 tanesi listelenir).

Kaynaklar

  • ECMAScript Specification: RegExp söz dizimi ve semantiği.
  • OWASP: Regular expression Denial of Service (ReDoS).

Uygulama

Pratik örnekler

E-postayı kabaca kontrol et

\S+@\S+\.\S+ kalıbı basit e-posta benzeri karakter dizilerini bulur.

Rakamları çıkar

Flag g ile \d+ metindeki tüm sayı dizilerini döndürür.

Grupları kullan

Yuvarlak parantezler, ayrı olarak gösterilen kısmi eşleşmeleri yakalar.

SSS

Sık sorulan sorular

Sayfa neden donmuyor?

Düzenli ifade değerlendirmesi ayrı bir Web Worker içinde çalışır. Bir kalıp katastrofik backtracking nedeniyle engellerse, kullanıcı arayüzü yanıt vermeye devam eder; worker kısa bir süre sonra sert biçimde durdurulur.

Katastrofik backtracking nedir?

Belirli kalıplar (örneğin (a+)+ gibi iç içe niceleyiciler) elverişsiz girdilerde üstel sayıda adım gerektirebilir. Bu araç, bloke olmak yerine bu tür çalıştırmaları deterministik olarak durdurur.

Verilerim gönderiliyor mu?

Hayır. Kalıp ve test metni yalnızca tarayıcıda (worker içinde) yerel olarak değerlendirilir. Herhangi bir aktarım gerçekleşmez.

Hangi söz dizimi destekleniyor?

JavaScript'in (ECMAScript) düzenli ifade söz dizimi. Diğer lehçeler (PCRE, .NET) farklılık gösterebilir.

Neden tüm eşleşmeler gösterilmiyor?

Aşırı büyük çıktılara karşı koruma amacıyla en fazla 1000 eşleşme değerlendirilir; ilk 100 tanesi listelenir, PDF dışa aktarımında ilk 50 tanesi. Değerlendirme sınırına ulaşıldığında bir uyarı gösterilir.

İpuçları

Bilinmesi gerekenler

  • Tüm eşleşmeler için g flag'ini etkinleştirin.
  • (a+)+ gibi iç içe niceleyicilerden kaçının — bloke olabilirler.
  • Değerlendirme izole çalışır; sayfa donmaz.

İlgili hesap makineleri

Diğer araçlar