2 puan yazan GN⁺ 2023-09-12 | 1 yorum | WhatsApp'ta paylaş
  • Bu makale, iki düzenli ifadenin (regex) farkını ve kesişimini nasıl hesaplayacağınızı ele alıyor.
  • Yazar, α < β = false, α = β = true, α > β = false, α & β = α ^ β = ∅, α - β = ∅ gibi denklemler ve sonuçlar sunarak süreci gösteriyor.
  • Ayrıca bu makale, aşağıdaki düzenli ifade sözdizimine kısa bir giriş de içeriyor:
    • . herhangi bir tek karakterle eşleşir
    • xy birleştirme: x ile ve ardından y ile eşleşir
    • x|y alternatif: x veya y ile eşleşir
    • x* Kleene yıldızı: x ile 0 veya daha fazla kez eşleşir
    • (xyz) gruplama: xyz’yi tek bir öğe olarak ele alır
    • () boş düzenli ifadedir ve boş dizeyle eşleşir
    • x+ Kleene artısı: x ile 1 veya daha fazla kez eşleşir
    • x? isteğe bağlı: isteğe bağlı olarak x ile eşleşir
    • x{n} kuvvet: x’i kendisiyle n kez birleştirir
    • x{m,n} tekrar: x’i kendisiyle m ile n kez arasında birleştirir
    • [a-z0-9] gruplama: grup içindeki herhangi bir tek karakterle eşleşir
    • [^a-z0-9] olumsuz gruplama: grup içindeki karakterler dışında herhangi bir tek karakterle eşleşir
    • \c kaçış: özel karakter c ile eşleşir
    • \u001a Unicode kaçışı: ilgili UTF-16 karakteriyle eşleşir
    • a, b, c diğer tüm karakterler kendileriyle eşleşir.
  • Makalede ayrıca anchor’lar, sıfır genişlikli önermeler, geri referanslar, alt grup çıkarımı, arama veya kısmi eşleşme ve davranışı değiştiren diğer bayraklar gibi desteklenmeyen özelliklerden de bahsediliyor.
  • Daha fazla bilgi için yazar, antimirovun GitHub sayfasına bakılmasını öneriyor.
  • Bu makalenin yazarı, Twitter ve Mastodon’da @d6 olarak bilinen Eiríkr Åsheim’dir.

1 yorum

 
GN⁺ 2023-09-12
Hacker News görüşü
  • Bu yazı, iki düzenli ifadenin (regex) farkını ve kesişimini hesaplayan bir aracı tartışıyor.
  • Kullanıcılar, 3'e bölünebilen sayıları filtrelemek gibi karmaşık regex'leri işlemeye çalışırken aracın takılabildiğini bildirdi.
  • Bu araç, e-posta adresleri veya URL'ler gibi belirli türdeki dizeleri doğrulamak için kullanışlı dize sınıfı hiyerarşileri oluşturmakta kullanılabilir.
  • Bir kullanıcı, regex'i çeşitli biçimlerde parse edip sonunda farklı diller için kod üreten süreci gösteren benzer bir web demosu hazırladı.
  • Düzenli ifadeler, karmaşık matematik kuramını lineer cebire benzer pratik bir arayüzle bir araya getirme yeteneğiyle takdir edildi.
  • Bazı kullanıcılar, aracın ürettiği birleşim ve kesişim regex'lerinin karmaşıklığına şaşırdı ve en küçük düzenli ifadeyi üretmenin daha büyük bir zorluk olabileceğini öne sürdü.
  • Bu araç, verilen regex'ler için Deterministic Finite Automaton (DFA) grafikli gösterimi sunuyor ve kullanıcılar bunu etkileyici buldu.
  • Bazı kullanıcılar, aracın sözdizimi açısından geçerli URL ve e-posta adresleri için regex'leri işlerken zorlandığını fark etti.
  • Mobil cihazlarda kullanılabilirliği artırmak için regex giriş alanında otomatik öneri özelliğinin kapatılması önerildi.
  • Bir kullanıcı, "IP RegEx filtresi" ayarı için doğrulama mantığı yazarken regex kesişimi kavramını kullanma deneyimini paylaştı; bunun, filtrenin çalışmadığına dair kullanıcı şikayetlerini önlemeye yardımcı olduğunu söyledi.