GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Warum funktioniert `\d` nicht in regulären Ausdrücken in sed?

\d ist ein Schalter, kein Makro mit regulären Ausdrücken. Wenn Sie eine vordefinierte "Konstante" anstelle von [0-9] verwenden möchten Ausdruck versuchen Sie einfach diesen Code auszuführen:

s/[[:digit:]]+//g

In sed gibt es keine solche Sonderzeichengruppe. Sie müssen [0-9] verwenden .

In GNU sed \d führt einen ein- bis dreistelligen Dezimalzeichencode im Bereich von 0-255 ein. Wie in diesem Kommentar angegeben.


Linux
  1. Reguläre Ausdrücke einführen

  2. Warum funktioniert der reguläre Ausdruck in X, aber nicht in Y?

  3. Bash + Name durch regulären Ausdruck überprüfen?

  4. Warum funktioniert `exit &` nicht?

  5. Bash:Reguläre Ausdrücke als Ersatz?

Erste Schritte mit regulären Ausdrücken

Reguläre Ausdrücke in Grep (Regex)

Warum funktioniert Bash `(())` nicht innerhalb von `[[]]`?

Warum funktioniert hostname --fqdn nicht auf meinem Ubuntu-Computer?

Warum funktioniert mein symbolischer Link nicht?

Warum verwendet sed nicht standardmäßig den erweiterten Regex-Modus?