Direkt zum Hauptinhalt springen
eLearner.app
Modul 5 · Lektion 3 von 419/32 im Kurs~8 min
Lektionen des Moduls (3/4)

Negation: `[^...]`

Fügen Sie als erstes Zeichen innerhalb der Quadrate ein Caretzeichen ^ ein invertiert die Klasse: Entspricht jedem Zeichen außer den aufgeführten.

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

[^aeiou] stimmt mit Konsonanten, Leerzeichen, Satzzeichen, Ziffern und allem überein nicht ist ein Vokal.

Typische Beispiele

  • [^\s] – jedes „Nicht-Leerzeichen“-Zeichen (entspricht \S).
  • [^0-9] – alles andere als eine Ziffer (entspricht \D).
  • [^"]+ – „eine Folge von Zeichen, die keine doppelten Anführungszeichen sind“ (nützlich für Inhalte in Anführungszeichen extrahieren).
Code
Pattern: "([^"]+)"
Sample:  Il libro "Il nome della rosa" e' famoso.

Die Gruppe ([^"]+) erfasst alles in Anführungszeichen stoppend vor dem nächsten ": Dies ist ein klassischer Trick, um das Problem zu vermeiden gierig vs. faul.

Negation und alternative Platzhalter

Die negierte Klasse [^...] verbraucht genau ein Zeichen, das NICHT zur aufgelisteten Menge gehört. Es ist ein großartiges Tool, um zu verhindern, dass die Engine kritische Trennzeichen verbraucht, und um ReDoS aufgrund unendlicher Versuche zu verhindern.

Probieren Sie es selbst aus

Übung#regex.m5.l3.e1
Versuche: 0Wird geladen…

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

Editor wird geladen…
Hinweis anzeigen

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

Lösung nach 3 Versuchen verfügbar

Wiederholungsübung

Übung#regex.m5.l3.e2
Versuche: 0Wird geladen…

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

Editor wird geladen…
Hinweis anzeigen

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

Lösung nach 3 Versuchen verfügbar

Zusätzliche Herausforderung

Übung#regex.m5.l3.e3
Versuche: 0Wird geladen…

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

Editor wird geladen…
Hinweis anzeigen

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

Lösung nach 3 Versuchen verfügbar