Regex Test Cihazı
Metne karşı düzenli ifadeleri test edin ve tüm eşleşmeleri vurgulanmış olarak görün. Kalıp eşleştirme, veri doğrulama veya metin işleme ile çalışan geliştiriciler için vazgeçilmezdir. İfadenizin tam olarak neyle eşleştiğini gösteren görsel geri bildirimle regex kalıplarınızda gerçek zamanlı olarak hata ayıklayın ve düzeltin.
Sıkça Sorulan Sorular
Düzenli ifade, bir arama desenini tanımlayan bir karakter dizisidir. Regex, tam dizeler yerine kalıplara dayalı olarak metni bulmak, eşleştirmek ve işlemek için kullanılır. E-posta adreslerini doğrulama, metinden veri çıkarma, bul ve değiştir işlemleri ve günlük dosyalarını ayrıştırma gibi görevler için inanılmaz derecede güçlüdür.
Desen alanına regex deseninizi girin ve test metninizi metin alanına yapıştırın. Araç, tüm eşleşmeleri gerçek zamanlı olarak vurgulayarak deseninizin tam olarak neyi yakaladığını size gösterecektir. Hiçbir şey vurgulanmazsa deseniniz eşleşmiyor demektir. İhtiyacınız olanla tam olarak eşleşene kadar kalıbınızı hassaslaştırmak için bu görsel geri bildirimi kullanın.
En yaygın bayraklar şunlardır: 'g' (global) sadece ilk eşleşme yerine tüm eşleşmeleri bulur, 'i' (büyük/küçük harfe duyarsız) büyük/küçük harf farklarını göz ardı eder, 'm' (çok satırlı) ^ ve $ 'nın sadece dize başı/sonu yerine satır başı/sonu ile eşleşmesini sağlar ve 's' (dotall) . 'ın yeni satır karakterleriyle eşleşmesini sağlar. Genel büyük/küçük harfe duyarsız eşleştirme için 'gi' gibi bayrakları birleştirin.
E-posta için: temel doğrulama için /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/ deneyin. URL'ler için: /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/ works for most cases. Mükemmel e-posta/URL doğrulamasının son derece karmaşık olduğunu unutmayın - bu kalıplar en yaygın durumları ele alır.
Nokta (.) herhangi bir karakterle eşleşir. Yıldız işareti (*) 'sıfır veya daha fazla kez' anlamına gelirken, artı (+) 'bir veya daha fazla kez' anlamına gelir. Yani .* herhangi bir karakterin sıfır veya daha fazlasıyla eşleşirken (hiçbir şeyle eşleşmemek dahil), .+ eşleşmek için en az bir karakter gerektirir. Örneğin, 'a.*b' 'ab' veya 'a123b' ile eşleşir, ancak 'a.+b' yalnızca 'a123b' ile eşleşir.
Varsayılan olarak, *, + ve {n,m} gibi niceleyiciler açgözlüdür - mümkün olduğunca çok eşleşirler. Niceleyiciden sonra bir soru işareti (?) ekleyerek onu açgözlü olmayan (tembel), mümkün olduğunca az eşleşen hale getirin. Örneğin, '<div>hello</div><div>world</div>' metninde, /<div>.*<\/div>/ tüm dizeyle eşleşirken (açgözlü), /<div>.*?<\/div>/ her etiketle ayrı ayrı eşleşir (açgözlü olmayan).
Yakalama grupları, bir eşleşmenin belirli kısımlarını ayıklamak için parantez () kullanır. Örneğin, /user-(\d+)/ sayısal kullanıcı kimliğini yakalar. Yakalanan değere eşleşme grupları kullanılarak çoğu dilde erişilebilir. Nicelik belirteçleri için gruplamaya ihtiyaç duyduğunuzda ancak değeri yakalamak istemediğinizde, yakalamayan gruplar için (?:...) kullanın.
Örnek günlük girişlerini test dizesi alanına yapıştırın ve zaman damgalarını, IP adreslerini, durum kodlarını veya hata mesajlarını ayıklamak için desenler oluşturun. Görsel vurgulama, tam olarak nelerin eşleştiğini göstererek Logstash, Splunk gibi günlük analiz araçlarına veya özel komut dosyalarına dağıtmadan önce kalıpları hassaslaştırmanıza yardımcı olur.
Lookaheads (?=...) ve lookbehinds (?<=...), bir kalıbın eşleşmeye dahil edilmeden önünde veya arkasında bulunduğunu iddia eder. Örneğin, /\d+(?= dollars)/ 'dollars' ile takip edilen sayılarla eşleşir ancak yalnızca sayıyı yakalar. Negatif lookahead'ler (?!...) ve negatif lookbehind'ler (?<!..) kalıbın VAR OLMADIĞINI belirtir.
Evet! Telefon numaraları, posta kodları, kredi kartları veya özel formatlar gibi form doğrulama için regex kalıplarını test edin. Görsel geri bildirim, doğrulama kalıplarınızın geçerli girdileri doğru şekilde kabul ettiğinden ve uygulamanıza uygulamadan önce geçersiz olanları reddettiğinden emin olmanıza yardımcı olur.
