Regex Test Aracı
Bir düzenli ifade yazın ve tam olarak neyi eşleştirdiğini canlı olarak, tarayıcınızda görün.
Bu regex test aracı, bir düzenli ifade oluşturmanıza ve onu kendi metninizde anında geri bildirimle denemenize olanak tanır. Deseni yazdıkça eşleşmeler örnek metninizde parlar, bir sayaç kaç tane bulunduğunu gösterir ve yakalama grupları ayrıştırılır, böylece desenin her parçasının tam olarak neyi aldığını görebilirsiniz. Hepsi tarayıcınızda çalışır ve metniniz hiçbir zaman yüklenmez.
Düzenli ifadeler güçlüdür ama meşhur bir şekilde zahmetlidir ve birini doğru yapmanın en hızlı yolu onu gerçek girdide çalışırken izlemektir. Bir bayrağı değiştirmek veya bir karakter sınıfını ayarlamak ve vurguların anında güncellendiğini görmek, deneme yanılmayı hızlı ve görsel bir şeye dönüştürür.
Bu test aracı, her tarayıcıda yerleşik olan JavaScript düzenli ifade motorunu kullanır. Bu, web kodu için regex yazan herkes için idealdir, ancak lehçeyi bilmekte fayda var, çünkü desenler Python veya PCRE'dekiler gibi regex motorları arasında biraz farklı davranır.
Regex test aracı nasıl kullanılır
- Aramak istediğiniz metni giriş alanına yazın veya yapıştırın.
- Düzenli ifadenizi desen alanına girin.
- İhtiyacınız olan bayrakları değiştirin, örneğin g, i, m, s veya u.
- Eşleşmelerin canlı olarak vurgulandığını izleyin ve düzenlerken eşleşme sayısını kontrol edin.
- Desenin doğru parçaları aldığını doğrulamak için her eşleşmenin yakalama gruplarını okuyun.
Test aracı size neyi gösterir
Herhangi bir şeyi değiştirdiğiniz an üç şey güncellenir: metninizin içindeki vurgulanmış eşleşmeler, kaç eşleşme bulunduğunun anlık sayısı ve her yakalama grubunun içeriği. Bu üçünü birlikte görmek, size yalnızca desenin eşleşip eşleşmediğini değil, tam olarak neyi eşleştirdiğini ve çıkardığını söyler.
Yakalama grupları genellikle bir desenin sessizce yanlış gittiği yerdir. Bir regex, bir grup çok fazla veya çok az yakalarken doğru genel metni eşleştirebilir ve her grubu ayrı ayrı göstermek, bu hatayı kodunuza ulaşmadan önce belirgin hale getirir.
Bayrakları anlamak
Bayraklar tüm desenin nasıl davrandığını değiştirir. g bayrağı ilkinde durmak yerine her eşleşmeyi bulur, i eşleştirmeyi büyük/küçük harfe duyarsız yapar ve m, satır başı ve sonu bağlantılarının tüm dize yerine her satıra uygulanmasını sağlar.
Bazen dotall denen s bayrağı, noktanın satır başı karakterlerini de eşleştirmesini sağlar, bu satırlara yayılan desenler için kullanışlıdır. u bayrağı tam Unicode işlemeyi açar. Bunları burada açıp kapatın, eşleşme vurguları yeniden çizilir, böylece her bayrağın etkisini doğrudan görebilirsiniz.
JavaScript regex lehçesi önemlidir
Bu, akılda tutulması gereken dürüst uyarıdır. Araç JavaScript regex motorunu çalıştırır, bu yüzden burada oluşturduğunuz şey tarayıcı ve Node.js kodunda tam olarak davranacağı gibi davranır, ancak Python, PCRE, Java veya .NET'te olduğu gibi olması gerekmez.
Farklar, lookbehind desteği, adlandırılmış grup söz dizimi, belirli Unicode özellik kaçışları ve bazı uç durumların nasıl ele alındığı gibi şeylerde ortaya çıkar. Deseniniz JavaScript dışı bir ortama gidecekse, göndermeden önce onu o motorda test edin ve buradaki sonuçları yalnızca JavaScript için geçerli sayın.
Kimler ve neden kullanır
Geliştiriciler bunu sürekli kullanır: e-posta veya telefon biçimlerini doğrulamak, günlük satırlarını ayrıştırmak, dağınık dizelerden alanları çıkarmak veya editörleri için bir bul-değiştir deseni yazmak. İfadeyi önce gerçek örneklere karşı doğru yapmak, sonradan hata ayıklamaktan tasarruf ettirir.
Kodlama dışında veri temizliği için de aynı derecede kullanışlıdır. Dışa aktarılmış verilerle uğraşıyor ve tekrar eden bir deseni bulmanız veya çıkarmanız gerekiyorsa, regex'i burada gerçek verinin bir parçasına karşı test etmek, onu gerçekten çalıştırmadan önce beklediğiniz şeyi yaptığını doğrular.
Desen oluşturma ipuçları
Küçük başlayın ve deseni parça parça büyütün, her eklemeden sonra vurguları kontrol edin. Hangi değişikliğin çalışan bir deseni bozduğunu görmek, tek seferde yazılmış uzun bir ifadeyi ayıklamaktan çok daha kolaydır.
Yakalamak veya kaçınmak istediğiniz zorlu uç durumlar dahil, gerçekçi örnek metin yapıştırın. Düzgün örneklerde çalışan bir desen genellikle gerçek dünya girdisinde tökezler, bu yüzden ona dağınık şeyleri erken verin. Nokta ve parantez gibi özel karakterleri gerçek anlamda kastettiğinizde kaçış eklemeyi unutmayın.
Her şey tarayıcınızda kalır
Hem deseniniz hem de test metniniz tarayıcının kendi regex motoru tarafından yerel olarak işlenir. Hiçbir şey bir sunucuya gönderilmez; bu, örnek verileriniz gerçek olduğunda önemlidir: günlük alıntıları, müşteri kayıtları veya makinenizden çıkmasını istemeyeceğiniz herhangi bir şey.
Bir hesap ve bir sunucuda kaydedilmiş bir geçmiş yoktur. Sekmeyi kapattığınızda deseniniz ve verileriniz gider, bu yüzden saklamak istediğiniz her şeyi kopyalayın. Bu gizliliğin bedeli, aracın ziyaretler arasında çalışmanızı hatırlamamasıdır.
Dikkat edilmesi gereken sınırlar
Kötü yazılmış bir desen, özellikle iç içe niceleyicilerle felaket geri izlemeye eğilimli olanı, büyük girdilerde yavaş olabilir. Sayfa bir düzenlemeden sonra takılıyor gibi görünüyorsa, ona giderek daha fazla metin vermek yerine deseni basitleştirin.
Test aracı, devasa dosyaları toplu işlemek için değil, ifadeleri oluşturmak ve kontrol etmek içindir. Cömert örnekleri rahatça işler, ancak bu, regex'i doğru yapmak için bir tezgahtır; ardından bitmiş deseni kendi kodunuzda veya editörünüzde çalıştırırsınız.
Sık sorulan sorular
Bu hangi regex lehçesini kullanır?
Tarayıcınızda yerleşik olan JavaScript düzenli ifade motorunu kullanır. Desenler tarayıcı ve Node.js kodunda tam olarak davrandığı gibi davranır, ancak Python, PCRE, Java veya .NET'ten farklı olabilir; gerekirse başka yerde test edin.
Desenim veya test metnim yüklenir mi?
Hayır. Hem regex'iniz hem de örnek metniniz tamamen tarayıcınızda, kendi regex motoruyla işlenir. Hiçbir şey bir sunucuya gönderilmez, bu yüzden gerçek günlük veya veri örneklerine karşı test etmek güvenlidir.
g, i, m, s ve u bayrakları ne yapar?
g tüm eşleşmeleri bulur, i büyük/küçük harfi yok sayar, m satır bağlantılarını her satıra uygular, s noktanın satır başlarını eşleştirmesini sağlar ve u tam Unicode işlemeyi açar. Bunları burada değiştirin, vurgular anında güncellenir.
Yakalama gruplarını gösterir mi?
Evet. Her eşleşme için araç, desenin her parçasının doğru metni aldığını doğrulayabilmeniz için yakalama gruplarını ayrıştırır. Bu, çok fazla veya çok az yakalayan bir grubu fark etmeyi kolaylaştırır.
Test aracı neden bazen yavaş hissettiriyor?
İç içe niceleyiciler içeren bir desen, büyük girdilerde yavaş olan felaket geri izlemeyi tetikleyebilir. Sayfa takılıyor gibi görünüyorsa, daha fazla metin eklemek yerine deseni basitleştirin ve daha küçük bir örnekte test edin.
Çalışmamı ziyaretler arasında kaydeder mi?
Hayır. Bir hesap veya sunucu tarafı geçmiş yoktur. Deseniniz ve metniniz yalnızca açık sekmede yaşar, bu yüzden kapatmadan önce saklamak istediğiniz her şeyi kopyalayın. Bu, aracı tasarım gereği tamamen gizli tutar.