14 Søg og erstat
Hvis du specifikt vil erstatte data i et attributfelt, kan du bruge funktionen regexp_replace()
i QGIS’ feltberegner. Denne funktion giver dig mulighed for at søge efter tekstmønstre i et felt og erstatte dem med ny tekst. Både simple termer og regulære udtryk kan bruges til at udføre komplekse erstatninger.
Syntaks:
regexp_replace("Feldname", 'Suchmuster', 'Ersatztext')
"Feltnavn"
: Det attributfelt, hvor udskiftningen skal foretages.'Søgemønster'
: Den term eller det tekstmønster, du vil erstatte. Det kan være en simpel tekst eller et regulært udtryk."Erstatningstekst
“: Den tekst, der skal erstatte den fundne term eller det fundne mønster.
Et eksempel:
Hvis du vil erstatte udtrykket Term1
med Term2
i et attributfelt, der hedder “Feltnavn”, er udtrykket som følger:
regexp_replace("Feldname", 'Begriff1', 'Begriff2')
I dette eksempel søger funktionen efter forekomster af term1
i hver datapost i feltet “Feltnavn” og erstatter dem med term2
.
Eksempel på anvendelse:
Antag, at attributfeltet “Feltnavn” indeholder en liste over træarter, og du ønsker at erstatte alle forekomster af udtrykket “eg” med “bøg”. Udtrykket i feltberegneren ville så se sådan ud:
regexp_replace("Feldname", 'Eiche', 'Buche')
Efter udførelsen erstattes alle poster, der indeholder ordet “eg”, automatisk af “bøg”.
Fordele ved regexp_replace()
:
- Fleksibilitet: Ud over enkle termer kan komplekse tekstmønstre også defineres ved hjælp af regulære udtryk for at fange specifikke eller tilbagevendende mønstre.
- Præcision: Ved at bruge regulære udtryk kan du sikre, at kun de ønskede forekomster erstattes.
- Automatisering: Funktionen kan bruges til alle dataposter i et attributfelt på samme tid, hvilket gør manuelle justeringer unødvendige.
Bemærk:
Hvis du kun vil erstatte enkle udtryk uden at bruge regulære udtryk, kan du også bruge funktionen replace()
, som er mere ligetil i sådanne tilfælde. Udtrykket ville så se sådan ud:
replace("Feldname", 'Begriff1', 'Begriff2')
Men regexp_replace()
-funktionen giver flere muligheder, da den genkender og ændrer mønstre og komplekse tekststrukturer.