Regex test aracı

Regular expression eşleşmelerini test et

Bayraklar ?
Test metni
Eşleşmeler
Eşleşme yok

Araç rehberi

Regex test aracı hakkında

Regex tester JavaScript regular expressions değerlerini metin üzerinde çalıştırır ve live matches, capture groups, match indices gösterir.

Email, URL, log-line, extraction ve form-validation patterns debug etmek için tarayıcıda lokal kullanılır.

Regex Tester nasıl kullanılır

  1. Dış / / olmadan regular expression girin.
  2. Gerektiğinde g, i, m, s, u veya y flags açın.
  3. Test metin yapıştırın ve her match, capture group, index değerini inceleyin.

Ne zaman kullanılır

  • Form-validation pattern valid girdi reddediyor mu kontrol etmek.
  • Logs ve metin içinden IDs, URLs veya error codes çıkarmak.
  • Greedy ve lazy quantifiers ile match length farkını karşılaştırmak.

Flags, capture groups ve yaygın hatalar

JavaScript regex flags, escaping ve quantifiers konusunda hassastır. Eksik backslash veya geniş .* sonucu tamamen değiştirebilir.

  • g tüm matches döndürür; g yoksa genelde ilk match görülür.
  • i case ignore eder, m ^ ve $ işaretlerini satır bazında çalıştırır.
  • Parentheses capture groups oluşturur; (?: ) gereksiz capture önler.
  • Heavy backtracking uzun metin üzerinde yavaşlatabilir, nested quantifiers azaltın.

Regex test aracı hakkında sık sorulan sorular

/pattern/g yazmalı mıyım?
Hayır. Sadece pattern girin, flags ayrı controls ile ayarlanır.
Match neden beklenenden uzun?
.* ve .+ default olarak greedy çalışır. .*? veya daha specific character class deneyin.
Test metin upload edilir mi?
Hayır. Matching tarayıcıda lokal çalışır ve wetool.site sunucusuna upload edilmez.

Regex Tester ve üretim doğrulaması

Tester hızlı feedback sağlar, ama üretim doğrulaması uç durumlar, boş değerler, Unicode girdisi ve sunucu regex motoru farklarını da kapsamalıdır.

Felaket geri izleme kontrol listesi

Kısa sample üzerinde çalışan regex uzun girdi üzerinde hang olabilir. Ship etmeden önce nested quantifiers ve broad wildcards kontrol edin.

  • (.*)+, (.+)+ veya (a|aa)+ gibi explosive nested veya overlapping patterns kullanmayın.
  • Mümkünse .* yerine explicit character classes kullanın; comma-delimited field için [^,]* tercih edin.
  • User-controlled girdi length sınırlayın ve server-side timeouts koyun veya safe execution controls olan regex engine kullanın.

JavaScript regex vs diğer language engines

Online tester içinde geçmek sunucu engine aynı davranacak demek değildir. Flags, lookbehind, Unicode ve named captures engines arasında değişir.

  • JavaScript g, i, m, s, u ve y flags PCRE, Python veya Go options ile birebir eşleşmez.
  • Lookbehind, Unicode property escapes ve named groups old browsers veya bazı sunucu runtimes içinde unavailable olabilir.
  • Pattern sunucu tarafına taşınmadan önce boş değerler, uzun girdi, emoji ve satır sonu durumları hedef dilde birim testleri ile kapsanmalıdır.