Linux-kommandolinjen og Bash-scripting på ekspertniveau · Lektion

Capture groups, backreferences og substitution

Brug parenteser til at indfange dele af et match, og genbrug dem med backreferences til avanceret matchning og teksterstatning.

Lektion 4 af 413 trin

Capture groups, backreferences og substitution er en gratis Linux-kommandolinjen og Bash-scripting på ekspertniveau-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Linux-kommandolinjen og Bash-scripting på ekspertniveau, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Linux-kommandolinjen og Bash-scripting på ekspertniveau-kurset indeholder 4 lektioner i alt.

Hvad er opsamlingsgrupper?

Parenteser ( ) opretter en opsamlingsgruppe, som husker den tekst, den matchede, så du kan henvise til den senere.

echo "2026-05-29" | grep -E "([0-9]{4})-([0-9]{2})-([0-9]{2})"

Nummerering af grupper

Grupper nummereres fra venstre mod højre efter deres åbningsparentes. Gruppe 1 er den første (, gruppe 2 den anden og så videre.

# (year)(month)(day)
# group 1 = year, 2 = month, 3 = day

Tilbagereferencer i matchning

En tilbagereference som \1 matcher den SAMME tekst, som en tidligere gruppe opsamlede. Det er nyttigt til at finde dubletter.

echo "hello world world" | grep -E "(\w+) \1"

Find gentagne ord

Mønstret (\w+) \1 finder et ord, der efterfølges af sig selv, hvilket er en almindelig slåfejl.

echo "the the cat sat" | grep -oE "(\w+) \1"

Opsamlingsgrupper med sed

I sed-erstatninger genbruges opsamlede grupper i erstatningen som \1 og \2. Brug -E til udvidede regulære udtryk.

echo "2026-05-29" | sed -E "s|([0-9]{4})-([0-9]{2})-([0-9]{2})|\3/\2/\1|"

Byt om på felter

Opsaml to felter, og omarrangér dem i erstatningen for at omdanne dataformater.

echo "Doe, John" | sed -E "s/(\w+), (\w+)/\2 \1/"

Begrebet ikke-opsamlende grupper

Nogle gange grupperer du kun for at anvende en kvantor og ikke for at opsamle. I PCRE kan du skrive (?:...) for at undgå nummerering.

# PCRE only (grep -P):
echo "abcabc" | grep -P "(?:abc){2}"

Alternation i grupper

Kombinér grupper med alternation | for at matche én af flere muligheder og stadig opsamle resultatet.

echo "cat dog fish" | grep -oE "(cat|dog)"

Anvend en kvantor på en gruppe

Anvend kvantorer på en hel gruppe for at gentage et mønster. (ab)+ matcher én eller flere ab-sekvenser.

echo "ababab" | grep -oE "(ab)+"

Opsamling i awk

awk bruger match() sammen med RSTART og RLENGTH til at udtrække den matchede del.

echo "id=42" | awk "{ if (match(\$0, /id=[0-9]+/)) print substr(\$0, RSTART, RLENGTH) }"

Praktisk omformatering

Opsamlingsgrupper er særligt nyttige, når du omformaterer logge eller CSV-kolonner til et nyt layout i én gennemgang.

echo "John,30,NYC" | sed -E "s/([^,]+),([^,]+),([^,]+)/Name: \1 Age: \2 City: \3/"

Hurtig kontrol

Test din viden om opsamlingsgrupper.

Opsamling

Du har fået styr på opsamlingsgrupper:

  • Parenteser opsamler og nummererer matchet tekst
  • Tilbagereferencer som \1 matcher den samme tekst igen
  • I sed kan du genbruge grupper i erstatninger for at omarrangere felter
  • Anvend kvantorer og alternation i grupper for at skabe fleksible mønstre
Gratis at komme i gang

Lær Bash med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
22
Lektioner
88

Ofte stillede spørgsmål

Er lektionen “Capture groups, backreferences og substitution” gratis?

Ja — hele teksten til “Capture groups, backreferences og substitution” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Linux-kommandolinjen og Bash-scripting på ekspertniveau-kurset, skal du opgradere til CoddyKit PRO. Linux-kommandolinjen og Bash-scripting på ekspertniveau-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Capture groups, backreferences og substitution”?

Brug parenteser til at indfange dele af et match, og genbrug dem med backreferences til avanceret matchning og teksterstatning. Du øver dig i Linux-kommandolinjen og Bash-scripting på ekspertniveau med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Linux-kommandolinjen og Bash-scripting på ekspertniveau?

Der kræves ingen tidligere erfaring. Linux-kommandolinjen og Bash-scripting på ekspertniveau på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Capture groups, backreferences og substitution”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Linux-kommandolinjen og Bash-scripting på ekspertniveau-lektion?

Ja. Alle Linux-kommandolinjen og Bash-scripting på ekspertniveau-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Introduktion til regulære udtryk (Regex)
  2. Avanceret Grep med Regex
  3. Kombination af Regex med sed/awk
  4. Capture groups, backreferences og substitution
← Tilbage til Linux-kommandolinjen og Bash-scripting på ekspertniveau