Modül dersleri (3/4)
Olumsuzluk: `[^...]`
Parantez içindeki ilk karakter olarak ^ düzeltme işaretinin yerleştirilmesi
tersine çevirir sınıfı: listelenenler hariç herhangi bir karakterle eşleşir.
Pattern: [^aeiou]
Sample: ciao mondo
^ ^^ ^[^aeiou] ünsüzleri, boşlukları, noktalama işaretlerini, rakamları ve görünen her şeyi eşleştirir
sesli harf değildir.
Tipik örnekler
[^\s]-- herhangi bir "boşluksuz" karakter (\S'ye eşdeğer).[^0-9]-- rakam olmayan herhangi bir şey (\Dile eşdeğerdir).[^"]+-- "çift tırnak olmayan bir karakter dizisi" (kullanışlı tırnak işaretleri arasındaki içeriği çıkarın).
Pattern: "([^"]+)"
Sample: Il libro "Il nome della rosa" e' famoso.([^"]+) grubu tırnak işaretleri arasındaki her şeyi yakalar durdurarak
bir sonraki "'den önce: bu,
açgözlü-tembel sorunu.
Olumsuzluk ve alternatif joker karakterler
Olumsuzlanan [^...] sınıfı, listelenen kümenin parçası OLMAYAN tam olarak bir karakter tüketir. Sonsuz geri izleme döngülerinin neden olduğu ReDoS'u önleyerek motorun kritik sınırlayıcıları aşmasını önleyen güçlü bir araçtır.
Deneyin
Her dizenin içeriğini, tırnak işaretlerini yakalamadan, çift tırnaklar arasında çıkarın.
İpucu göster
.+'yı [^"]+ ile değiştirin: bu şekilde eşleşme bir sonraki alıntıda durur.
3 denemeden sonra çözüm mevcut
Alıştırmayı gözden geçirin
YALNIZCA ünsüzlerden oluşan her kelimeyi bulun (sesli harf yok, rakam yok, sembol yok).
İpucu göster
Parantezlerin içinde sesli harf olumsuzlamayı \\W (kelime dışı) ve \\d (rakamlar) ile birleştirebilirsiniz.
3 denemeden sonra çözüm mevcut
Ek zorluk
Bir veya daha fazla karakterden oluşan dizileri, boşlukları ve virgülleri açıkça hariç tutarak eşleştirin.
İpucu göster
+ niceleyiciyle birlikte [^\\s,] kullanın.
3 denemeden sonra çözüm mevcut