Hvorfor virker sed-kommandoen ikke til at erstatte cifre efterfulgt af punktum? Løsning og forklaring

Hvorfor virker denne sed-kommando ikke til at erstatte alle mønstre med cifre efterfulgt af et punktum med en tom streng: sed 's/\d+\.//g' file.txt?

Sed-kommandoen virker ikke, fordi regex-syntaksen \d+ ikke understøttes af standard sed; brug [0-9] og escape punktummet som \\. for at rette det.

Hvorfor virker denne sed-kommando ikke til at erstatte alle mønstre med cifre efterfulgt af et punktum med en tom streng: sed 's/\d+\.//g' file.txt?

Der er flere grunde til, at denne sed-kommando ikke fungerer som forventet. Her er nogle af de mest sandsynlige årsager:

  • Regex Syntax: Den anvendte regex-syntaks \d+ er ikke understøttet af standard sed. Sed bruger POSIX-baserede regulære udtryk, hvor \d ikke er en gyldig metategn. I stedet skal du bruge [0-9] for at matche cifre.
  • Escape Characters: I sed skal visse tegn, som \, escapes med en ekstra backslash. Derfor skal \. skrives som \\. for at matche et bogstaveligt punktum.

For at rette kommandoen kan du ændre den til:

sed 's/[0-9]\+\.//g' file.txt

Her er en forklaring på den rettede kommando:

  • [0-9]: Matcher ethvert ciffer fra 0 til 9.
  • \+: Matcher en eller flere forekomster af det foregående element (i dette tilfælde cifre).
  • \\.: Matcher et bogstaveligt punktum.
  • //g: Erstatter alle forekomster globalt i hver linje.

Ved at bruge denne rettede kommando vil alle mønstre med cifre efterfulgt af et punktum blive erstattet med en tom streng i file.txt.

Opret din første opgave på få minutter

Spar dig selv for besvær og kom igennem din to-do liste i dag

1

Beskriv din opgave

2

Modtag bud

3

Få løst din opgave

opgaver platform services

Møbelsamling

Hjælp med at samle Ikea klædeskab

opgaver platform services

Maler

Klargøring af lejlighed til flyttesyn

opgaver platform services

Flyttehjælp

Flytning af 150 kvm hus til Roskilde fra København

opgaver platform services

Havearbejde

Beskæring af 4 større træer

opgaver platform services

IT support

Geninstallering af windows + programmer

opgaver platform services

Elektriker

Installation af Sonos musikanlæg i hus

opgaver platform services

Rengøring

Ugentlig rengøring af lejlighed (114kvm)

opgaver platform services

Flyttehjælp

Flytning af 150 kvm hus til Roskilde fra København

opgaver platform services

Elektriker

Opsætning af lamper i stue og soveværelse

opgaver platform services

Catering

3-retters menu til 14 mennesker