Salt la conținutul principal
Modulul 5 · Lecția 3 din 419/32 în curs~8 min
Lecții din modul (3/4)

Negație: `[^...]`

Plasarea unui caracter ^ ca prim caracter între paranteze inversează clasa: se potrivește cu orice caracter cu excepția celor enumerate.

Code
Pattern: [^aeiou]
Sample:  ciao mondo
          ^   ^^  ^

[^aeiou] potrivește consoane, spații, punctuație, cifre\u2026 tot ceea ce este nu o vocală.

Exemple tipice

  • [^\s] -- orice caracter „non-spațiu” (echivalent cu \S).
  • [^0-9] -- orice nu este o cifră (echivalent cu \D).
  • [^"]+ -- „o secvență de caractere care nu sunt ghilimele duble” (utilă pentru extrage conținut între ghilimele).
Code
Pattern: "([^"]+)"
Sample:  Il libro "Il nome della rosa" e' famoso.

Grupul ([^"]+) surprinde totul între ghilimele oprire înainte de următorul ": este un truc clasic pentru a evita problemă lacom-vs-leneș.

Negație și wildcards alternative

Clasa negată [^...] consumă exact un caracter care NU face parte din setul listat. Este un instrument puternic pentru a împiedica motorul să treacă peste delimitatorii critici, evitând ReDoS cauzat de bucle infinite de backtracking.

Încearcă

Exercițiu#regex.m5.l3.e1
Încercări: 0Se încarcă…

Extrageți conținutul fiecărui șir între ghilimele duble, fără a captura ghilimelele în sine.

Se încarcă editorul...
Afișează indiciu

Înlocuiți .+ cu [^"]+: în acest fel, potrivirea se oprește la următorul citat.

Soluție disponibilă după 3 încercări

Exercițiu de revizuire

Exercițiu#regex.m5.l3.e2
Încercări: 0Se încarcă…

Găsiți fiecare cuvânt format NUMAI din consoane (fără vocale, fără cifre, fără simboluri).

Se încarcă editorul...
Afișează indiciu

În paranteze puteți combina negația vocală cu \\W (non-cuvânt) și \\d (cifre).

Soluție disponibilă după 3 încercări

Provocare suplimentară

Exercițiu#regex.m5.l3.e3
Încercări: 0Se încarcă…

Potriviți secvențele de unul sau mai multe caractere, excluzând în mod explicit spațiile albe și virgulele.

Se încarcă editorul...
Afișează indiciu

Folosiți [^\\s,] cu cuantificatorul +.

Soluție disponibilă după 3 încercări