Lecciones del módulo (3/4)
Negación: `[^...]`
Coloque un símbolo de intercalación ^ como primer carácter dentro de los cuadrados.
invierte la clase: coincide con cualquier carácter excepto los enumerados.
Pattern: [^aeiou]
Sample: ciao mondo
^ ^^ ^[^aeiou] coincide con consonantes, espacios, puntuación, dígitos y todo lo que
no es una vocal.
Ejemplos típicos
[^\s]: cualquier carácter "que no sea espacio" (equivalente a\S).[^0-9]: cualquier cosa que no sea un dígito (equivalente a\D).[^"]+-- "una secuencia de caracteres que no son comillas dobles" (útil para extraer contenido entre comillas).
Pattern: "([^"]+)"
Sample: Il libro "Il nome della rosa" e' famoso.El grupo ([^"]+) captura todo entre comillas deteniéndose
antes del siguiente ": es un truco clásico para evitar el problema
codicioso versus perezoso.
Negación y comodines alternativos
La clase negada [^...] consume exactamente un carácter que NO pertenece al conjunto listado. Es una gran herramienta para evitar que el motor consuma delimitadores críticos, evitando ReDoS debido a infinitos intentos.
Pruébalo tú mismo
Estrai il contenuto di ogni stringa tra doppi apici, senza catturare gli apici stessi.
Mostrar pista
Sostituisci .+ con [^"]+: in questo modo il match si ferma al prossimo apice.
Solución disponible después de 3 intentos
Ejercicio de revisión
Trova tutte le parole composte SOLO da consonanti (niente vocali, niente cifre, niente simboli).
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
Desafío adicional
Matcha sequenze di uno o più caratteri escludendo esplicitamente spazi vuoti e virgole.
Mostrar pista
Usa [^\s,] con il quantificatore +.
Solución disponible después de 3 intentos