Saltar al contenido principal
eLearner.app
Módulo 5 · Lección 3 de 419/32 en el curso~8 min
Lecciones del módulo (3/4)

Negazione: `[^...]`

Mettere un accento circonflesso ^ come primo carattere dentro le quadre inverte la classe: matcha qualunque carattere tranne quelli elencati.

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

[^aeiou] matcha consonanti, spazi, punteggiatura, cifre\u2026 tutto cio' che non e' una vocale.

Esempi tipici

  • [^\s] -- qualunque carattere "non spazio" (equivalente a \S).
  • [^0-9] -- qualunque cosa che non sia una cifra (equivalente a \D).
  • [^"]+ -- "una sequenza di caratteri che non siano doppi apici" (utile per estrarre contenuti tra virgolette).
Code
Pattern: "([^"]+)"
Sample:  Il libro "Il nome della rosa" e' famoso.

Il gruppo ([^"]+) cattura tutto cio' che sta tra virgolette fermandosi prima del prossimo ": e' un trucco classico per evitare il problema greedy-vs-lazy.

Negazione e caratteri jolly alternativi

La classe negata [^...] consuma esattamente un carattere che NON appartiene all'insieme elencato. È uno strumento formidabile per evitare che l'engine consumi delimitatori critici, prevenendo ReDoS dovuti a tentativi infiniti.

Prova tu

Ejercicio#regex.m5.l3.e1
Intentos: 0Cargando...

Estrai il contenuto di ogni stringa tra doppi apici, senza catturare gli apici stessi.

Cargando editor...
Mostrar pista

Sostituisci .+ con [^"]+: in questo modo il match si ferma al prossimo apice.

Solución disponible después de 3 intentos

Esercizio di ripasso

Ejercicio#regex.m5.l3.e2
Intentos: 0Cargando...

Trova tutte le parole composte SOLO da consonanti (niente vocali, niente cifre, niente simboli).

Cargando editor...
Mostrar pista

Dentro le quadre puoi combinare negazione di vocali con \\W (non-parola) e \\d (cifre).

Solución disponible después de 3 intentos

Sfida aggiuntiva

Ejercicio#regex.m5.l3.e3
Intentos: 0Cargando...

Matcha sequenze di uno o più caratteri escludendo esplicitamente spazi vuoti e virgole.

Cargando editor...
Mostrar pista

Usa [^\s,] con il quantificatore +.

Solución disponible después de 3 intentos